Han höll av en sen laddning av Red Bulls Daniel Ricciardo i en nagel bitande klimax och leder hans lag-kamrat med åtta poäng efter Hamilton tog tredje.
Mercedes beslut att byta Hamilton till en tre-stop strategi fick honom tillbaka före Ferrari Kimi Raikkonen.
När Ricciardo följde efter, stängde han snabbt på Rosberg, som bara höll på.
Australiska Ricciardo återgick strax under 30 sekunder i drift, med 16 varv kvar, och först skivade i Rosbergs fördel i nästan tre sekunder per varv.
Men när varven tickade av fördelen med Ricciardo's färska däck började blekna och kanten togs bort från hans laddning.
Rosberg hade precis tillräckligt med fart, trots att han hanterade blekningsbromsar, för att hålla Red Bull i schack, över linjen bara 0.488 sekunder framåt för en seger som kunde visa sig avgörande i ödet för världstiteln.
Lyssna som Rosberg håller Ricciardo för att vinna Singapore GP
Hamilton hade en out-of-sorts helg, kvalar bara tredje, 0,7 sekunder långsammare än Rosberg, saknar grepp efter att ha misslyckats med att sätta upp sin bil ordentligt på grund av spårtid förlorade till ett hydrauliskt fel i fredags praktiken.
Han körde en stadig ras, oförmögen att göra något åt Rosberg och Ricciardo framför honom, och intermittent vädjar med sina ingenjörer att komma med en strategi som kan få honom platser.
Båda Mercedes förare kämpade med överhettning bromsar och Hamilton kämpade så mycket att han fångades av Raikkonen i den andra stint, och faktiskt förlorade tredje plats efter ett misstag på Turn Seven strax efter halv distans.
Lyssna som Raikkonen passerar Hamilton för tredje
Raikkonen gjorde sitt andra stopp i slutet av varvet, Hamilton ett varv senare, och världsmästaren återgick fortfarande på fjärde plats.
Vid det här laget bestämde sig Mercedes för att byta Hamiltons strategi och släppte loss honom från att sköta däcken och sa åt honom att stänga på Raikkonen.
Hamiltons sista depåstopp på varv 45 utlöste hans rivaler att följa efter, med Raikkonen pitting på följande varv och Ricciardo varvet efter det.
Flytten fungerade för Mercedes - den språnggrogged Hamilton tillbaka framför Raikkonen och trots att vara på supermjuka däck snarare än ultra-mjuka utvalda av Ferrari, Hamilton var bekvämt att hålla fast vid den slutliga podium plats.
Bakom topp fyra, McLaren Fernando Alonso sprang femte från början av loppet efter en snabb flykt. Det tog honom utanför som Force Indias Nico Hulkenberg och Toro Rossos Carlos Sainz kolliderade, och han passerade Toro Rossos Daniil Kvyat in i det första hörnet.
Alonso höll sig på plats genom den efterföljande säkerhetsbilsperioden och den första och andra hållplatsen, och kämpade hårt mot Sainz lagkamrat Daniil Kvyat och Verstappen.
Runt mittavstånd fick Alonso andrum tack vare en intensiv strid mellan Kvyat och Verstappen.
Lyssna på Hulkenbergs krasch i början
Kampen hade lagt nål på grund av ryssarnas demotion i Verstappens fördel efter fyra tävlingar denna säsong och efter att Kvyat hade klämt Verstappen nära väggen vid ett par tillfällen för att hålla honom bakom, klagade holländaren över lagradio.
I slutändan, Red Bull pited Verstappen att ge honom lite klar luft för att utnyttja hans takt - ett beslut som slutligen vann honom sjätte plats.
Men när loppet fortskred och strategierna skilde sig, passerades Alonso av Ferrari's Sebastian Vettel, återhämtade sig kraftigt från början på baksidan av nätet efter en fjädring misslyckande i kvalificering, och fann sig försvara från Verstappen, som var på färskare däck, i slutna varv.
Det extra greppet från gummit och överlägsenheten i Red Bull bilen innebar att Verstappen kunde dra av en aggressiv dyk ner insidan av Turn Seven med en handfull varv kvar.
Alonso var tvungen att vara nöjd med sjunde, bakom Vettel och Verstappen, en stark föreställning i slutet av en svår helg för McLaren.
Jenson Button drog sig tillbaka på två tredjedelars avstånd efter ett tidigt depåstopp för att ersätta en skadad framvinge och spendera mycket av sin tid med att kämpa med dåligt grepp på baksidan av fältet.
Singapore Grand Prix tävlingsresultat
Singapore Grand Prix täckning detaljer
Nico Rosberg återtog VM från Lewis Hamilton efter en läktare till Singapore Grand Prix.