A day after turning 36, Ronaldo scored his first goal in four league games to give Juventus the lead in the 13th minute, drilling into the bottom corner with his left foot.
Ronaldo then thought he had scored another with his right, but saw his powerful effort come down off the underside of the crossbar, bounce down on the line and away from goal.
Roma did at least put some pressure on the hosts in the second half, but they could not create that killer chance, with an own goal from Roger Ibanez in the 69th minute sealing the win for Andrea Pirlo's side.
A sixth win in a row in all competitions moved Juve above Roma on to 42 points, two clear of their opponents and five behind leaders Internazionale.
"Sometimes you can play well, sometimes less well. The important thing is to bring home the result," Pirlo said. "I don't know if it was the best Juve tonight, but it was a great Juve."
Before Ronaldo's double in the 2-1 win at Inter in the Coppa Italia semifinal, first leg on Tuesday, three games without a league goal was something of a drought by his high standards.
The forward had not gone four league games without scoring since 2017 when he was at Real Madrid, but the barren run was ended with a fine finish from the edge of the box.
Roma threatened on plenty of occasions, having 14 shots at goal compared to the home side's three, but they did not seriously test goalkeeper Wojciech Szczesny.
Ronaldo was ready to pounce to put the game to bed before Ibanez got there first, poking Dejan Kulusevski's squared pass into his own net.