Ronaldo’s goal – his 12th in the competition this season – and a late effort from Casemiro sealed victory for the defending champions after Edinson Cavani had equalised for PSG.
Ronaldo’s strike extended his scoring run to nine successive Champions League games, equalling the mark set by Ruud van Nistelrooy with Manchester United.
After a goalless first half in which the French champions had the upper hand, it was little surprise that it was Ronaldo who broke the deadlock five minutes into the second half.
Marco Asensio created the chance with great work on the left, feeding the ball to Lucas Vazquez whose cross was powered home for Ronaldo’s 102nd goal in the competition for Real.
GETTYCristiano Ronaldo netted Real Madrid's opener against PSG
It left PSG – already facing an uphill task in the absence of injured star man Neymar and trailing by two goals from the first leg – with a mountain to climb.
Their task was made even harder when Marco Verratti was sent off after diving into a tackle on Casemiro to earn himself a second yellow card.
However, with 20 minutes to go Cavani gave them a glimmer of hope with a goal that owed more to luck than judgment.
GETTYReal Madrid have qualified to the Champions League quarter-finals
Angel Di Maria found Thiago Silva with a cross and his header hit Sergio Ramos - with the ball spinning off Real’s captain before ricocheting off Cavani and flying into the net.
The fightback was shortlived, though, and it was a similarly scruffy goal that wrapped it up for Zinedine Zidane’s men.
With just under 10 minutes to go, the ball broke to Casemiro, and when Marquinhos attempted to block the shot, the ball hit the Brazilian’s back and flew into the back of the net for a defeat that leaves Unai Emery’s job in doubt at the end of the season.