Josip Ilicic and Duvan Zapata twice gave the Italians the lead with efforts that United goalkeeper David De Gea might have done better with.
But Ronaldo, having wrapped up comeback wins against Villarreal and Atalanta at Old Trafford, finished Bruno Fernandes’ clever backheel before half-time and then restored parity again with a sensational strike.
Villarreal are level on points with United in Group F after beating Young Boys 2-0 with Etienne Capoue and Arnaut Danjuma on target for the Yellow Submarine.
Robert Lewandowski bagged a hat-trick as Bayern Munich beat Benfica 5-2 to maintain their 100 per cent record in Group E.
Lewandowski opened the scoring on his 100th Champions League appearance and then set up Serge Gnabry’s cheeky backheel.
Morato halved the deficit before half-time, but Leroy Sane and Lewandowski put Bayern in cruise control.
Darwin Nunez scored Benfica’s second before Lewandowski rounded off matters with his 81st Champions League goal.
Barcelona moved above Benfica into second place with a 1-0 win at Dynamo Kiev.
Ansu Fati claimed the winner 20 minutes from time with a sweetly-struck half-volley.
Juventus stay top of Group H after beating Zenit St Petersburg 4-2 to book their place in the knockout stage of the competition.
Paulo Dybala, wearing the armband on his 50th appearance in the Champions League, gave Juventus an 11th-minute lead before Leonard Bonucci put through his own net with a looping header.
Dybala’s penalty restored Juventus’ lead before goals from Federico Chiesa and Alvaro Morata secured a fourth successive group win for the Turin side.
Zenit claimed a consolation through Sardar Azmoun deep into stoppage time.
Chelsea completed a double over Malmo with a hard-fought 1-0 win in Sweden.
Hakim Ziyech struck the 56th-minute winner in what was a much tougher game for the holders than their Stamford Bridge clash two weeks ago.
On that occasion, Chelsea brushed aside their Swedish opponents 4-0.
But Malmo were far more resolute on their own turf and Chelsea were denied until Ziyech tapped home Callum Hudson-Odoi’s wonderful cross from close range.
It was Chelsea’s 500th goal in European competition.
Wolfsburg upset Red Bull Salzburg 2-1 to inflict a first defeat on the Group G leaders.
Lukas Nmecha struck a stunning winner on the hour for Wolfsburg.
Maximilian Wober’s superb free-kick had cancelled out Ridle Baku’s third-minute opener, the German international’s first goal in the Champions League.
Lille moved into second spot with a 2-1 win away to Sevilla.
Lucas Ocampos swept Sevilla into a 15th-minute lead, but Jonathan David equalised from the penalty spot after Thomas Delaney brought down Jonathan Bamba.
Jonathan Ikone grabbed Lille’s winner six minutes into the second period after Zeki Celik’s shot had hit the post.