Juventus, who have led the table since beating Napoli 1-0 in February, were left with an unassailable 12-point lead with three games each left to play as they clinched a record 32nd league title.
The match, played at a half-empty Stadio Olimpico on a sunny bank holiday afternoon, was an anti-climatic end to a season which had at one stage promised to be one of the most exciting Italian title races for years.
Serie A: Juventus within striking distance of title
During the first half of the season, the lead had changed almost weekly with AS Roma, Napoli, Inter Milan and Fiorentina all taking turns at the top.
But, as their rivals faltered, Juventus, who beat Fiorentina 2-1 on Sunday, put together an astonishing run in which they took 73 of a possible 75 points to capture the title with games to spare.
The clash of Serie A's two highest-scoring sides was threatening to peter out into a tame goalless draw until Nainggolan slotted the ball home in the 89th minute following a move started with a delicate pass from Roma substitute Francesco Totti.
The 39-year-old Roma stalwart, in his 24th season at the club and no longer able to command a place in the starting lineup, has made a recent habit of coming on in the last few minutes and having a major impact on games.
Juve honour on line at Chelsea for no-nonsense Conte
Roma had more possession but Napoli, whose top-scorer Gonzalo Higuain returned after a three-match ban, carved out the better chances and Jose Callejon had a first-half goal ruled out by a hairline offside decision.
Higuain, who has scored 30 goals this season, nearly gave Napoli a first-half lead with a delightful piece of control only to see his shot saved by Wojciech Szczesny.
A Napoli goal looked imminent in the second half as Dries Mertens curled a shot agonisingly wide and Antonio Ruediger saved Roma by sliding in to take the ball off Marek Hamsik's foot just before an almost certain score.
Juve sight scudetto record as Roma rout Lazio
Instead, Nainggolan slotted the ball past Pepe Reina after Mohamed Salah managed to find the Belgian despite being surrounded by Napoli defenders.
Napoli, who would qualify directly for the Champions League group stage if they finish second, are now only two points clear of Roma, who are in third place, good for a berth in the final qualifying round.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ