The Portuguese superstar rescued a point for Andrea Pirlo with a penalty before a gravity-defying header in the second half.
The game came to life when referee Marco Di Bello pointed to the spot after Adrien Rabiot handled a Jordan Veretout effort at goal.
Veretout himself stepped up to take the penalty, and managed to just about sneak his spot-kick past Wojciech Szczesny and put Roma 1-0.
Former Roma keeper Szczesny got a big glove on the ball, but could only tip it onto the inside of the post and into the net.
Juventus themselves were then awarded a spot-kick in the 44th minute, again for a handball, which was duly converted by Ronaldo.
Cristiano Ronaldo kept his cool to expertly send Roma keeper Antonio Mirante the wrong way, and seemingly send the sides into the break level at 1-1.
However, in the dying moments of the first half, Roma produced a textbook counter-attack after a Juventus free-kick.
Henrikh Mkhitaryan teed up Veretout to slot past Szczesny for his second of the game.
Roma went into the break leading 2-1 and with their tails up.
With things getting even better for the hosts after Adrien Rabiot was sent off for Juventus just after the hour mark for a second bookable offence.
Rabiot’s sending off was the first red card brandished by referee Marco Di Bello since 2014.
Although he had little option but to give Rabiot his marching orders after a reckless challenge.
With Cristiano Ronaldo on the pitch Juventus were always in the game at 2-1, and so it proved.
The Portuguese superstar produced a trademark CR7 header to divert a cross into the net from former Manchester City right-back Danilo.
This salvaged a point for the ten-man Juventus.
The Andrea Pirlo coached side will face Napoli next on Sunday October 4th at Allianz Stadium.