Roma are now unbeaten in eight editions of the derby stretching back to 2012.
With only one point separating the sides, the biggest 'Derby della Capitale' in years was played out in a half-empty stadium as Roma's hardline ultras continued to protest strict security measures introduced by the club last year.
But after a contentious first half produced little of note from either side, Roma made light of their relative lack of support with an improved second-half performance that saw Strootman then Nainggolan strike within 13 minutes of each other.
Roma are now unbeaten in eight editions of the derby stretching back to 2012 and their 10th win of the season moved Luciano Spalletti's men up to second at four points behind leaders Juventus.
Spalletti admitted his side had a first half to forget, but hinted he could give the players some extra free time.
"Thanks to our superiority in midfield we managed to find the space we were after in the second half," Spalletti told Rai Sport.
"We have to celebrate this because when you lose a derby, everyone else laughs at you. There will be two days of partying, then that's it."
Lazio are now four points behind Roma, and although post-match comments from Senad Lulic took on racist overtones when he compared Roma's black defender Antonio Rudiger to a street seller, coach Simeone Inzaghi conceded mistakes cost them dearly.
"We started really well and for 60 minutes we hardly allowed Roma a shot on goal," said Inzaghi.
"Then we gifted them two goals and now we're here talking about a 2-0 win for Roma. We shouldn't be making these silly mistakes, we know how much this game means to our fans."
AC Milan sit third, also at four points adrift, after Gianluca Lapadula struck late to give the Rossoneri a last-gasp 2-1 win against Crotone at the San Siro.
"Winning this game was hard because Crotone were digging in, but we kept on fighting till the very end," said Milan coach Vincenzo Montella.
"That, for me, gave this win a special flavour."
After Napoli's 3-0 romp over Inter Milan on Friday kept their early season hopes alive, Milan's win heaped the pressure on Roma to follow suit.
Yet the absence of lively Egyptian winger Mohamed Salah, ruled out with injury for the rest of the year, was perhaps most felt in a lacklustre first half that saw Lazio's Italy forward Ciro Immobile, fire twice off target.
Lulic's effort was the only one on target in the opening period, but afterwards the Serbian courted controversy with barbs of a racist nature aimed at Rudiger.
In comments to Mediaset Premium, Lulic said: "He's been speaking too much even before this game. Two years ago, he was selling socks and belts in Stuttgart and now he thinks he's a phenomenon."
Edin Dzeko, looking to take the sole lead of the Serie A scoring charts ahead of Inter Milan striker Mauro Icardi, twice spurned chances after the restart before Wallace gifted possession to Strootman on the edge of the area for the Dutchman to run in and chip the ball over Federico Marchetti.
Lacklustre Lazio defending then allowed Nainggolan to strike on the counter to scuff a bouncing shot inside Marchetti's near post on 77 minutes.
Elsewhere, England 'keeper Joe Hart conceded twice as Torino's purple patch was halted in a 2-0 defeat at Sampdoria.
Sassuolo won another mid-table battle in a 3-0 home romp over Empoli, as Pescara grabbed a last-gasp share of the spoils in a 1-1 draw at home to Cagliari.
Later Sunday, Fiorentina had Senegal striker Khouma Babacar's last-gap header to thank for a 2-1 win over struggling Palermo that moved the Florence side up to eighth place and into contention for a place in Europe.
Fiorentina are now two points ahead of Inter Milan and 13 adrift of leaders Juventus, although Paulo Sousa's men have a game in hand after a fixture at Genoa was rained off earlier this season.