Hamilton won his seventh race of the season Sunday to move to 241 points, ahead of Rosberg on 238 with five races left. The advantage is thin but the Briton carries all the momentum after back-to-back victories and Rosberg's hopes of his first F1 title are diminishing.
Hamilton started from pole position and led comfortably for much of the race but was forced into a late pit-stop, briefly giving up the race lead to Red Bull's Sebastian Vettel, before he passed the German seven laps from the finish to win by 13.5 seconds at the Marina Bay circuit.
Rosberg was forced to start from pit-lane due to a failure on the installation lap, and he did 14 laps at the back of the field in the stricken car before retiring. The team identified a problem in the steering column, which prevented full usage of the steering wheel, affecting gear selection and preventing use of stored battery power.
"I came here hoping to gain seven points (on Rosberg) and thinking anything more than that is a bonus," Hamilton said. "Those extra points are a huge help.
"This is game time. This is about hunting. In my head, I don't think I am leading the championship. There are still five races left and all I'm going to do is what I've done in the last two races which is just attack every session."
Though Rosberg tried everything to get the car into working mode, he knew from the moment the car failed to start on the warm-up lap that it was hopeless.
"''It was a horrible feeling to see everyone go because then I knew it was over," Rosberg said.
"There was just no point in continuing. So a tough day really."
Vettel, who temporarily looked like winning Singapore for the fourth-straight year, finished second, just holding off Red Bull teammate Daniel Ricciardo, who moved to 60 points off the championship lead. Ferrari's Fernando Alonso was fourth. Second to fourth places were separated by just 1.8 seconds.
Williams' driver Felipe Massa was fifth, ahead of fast-finishing Toro Rosso driver Jean-Eric Vergne. Seventh through 10th places were fought out right until the final corner, with Sergio Perez of Force India seventh and his teammate Nico Hulkenberg ninth, while Ferrari's Kimi Raikkonen was eighth and McLaren's Kevin Magnussen 10th.
Valtteri Bottas of Williams was seventh on the penultimate lap but ended up out of the points in 11th in a chaotic finish among the lower end of the points-yielding places.
Hamilton had built a six-second lead over Alonso when the safety car emerged on lap 31 following a crash between Perez and Sauber's Adrian Sutil.
Alonso pitted immediately onto the harder tire, putting him on the same rubber as Vettel and Ricciardo, and the lengthy six-lap safety-car period meant they switched strategy and decided to run to the end on those tires.
Hamilton, however, had to make another pit-stop as he had not yet used the harder tire, so once the safety car came in he set about building his lead, trying to get it out to 27 seconds to enable him to pit and still emerge in front.
Though his tires did not have quite enough life to do that — getting his lead out to just over 25 seconds — he emerged from his stop behind Vettel, whose tires were very worn. The German was a sitting duck and Hamilton swept past easily to reclaim the lead.
"The safety-car came at the worst possible time for us," Vettel said. "There was a lot of pressure from Dan and Fernando behind, so I am very happy to make it to P2 (second)."
Ricciardo was right on the back of Vettel in the closing stages, with marginally fresher tires, but was not able to make a passing attempt. However, he did stay ahead of Alonso, who was on the newest tires of the trio.
"I did expect (Alonso) to come on a bit harder ... but we fell into each other's pace," Ricciardo said. "It was follow-the-leader and there was not much else to do."