Milan - Cristiano Ronaldo stretched his scoring streak to nine consecutive league games with a penalty double as Serie A leaders Juventus bounced back from their defeat by Napoli with a 3-0 win over Fiorentina, whose owner said Sunday's result left him feeling "disgusted".
But title rivals Inter Milan and Lazio also got back to winning ways, with Romelu Lukaku and Ciro Immobile bagging a brace apiece for their respective teams to keep the pressure on the eight-time defending champions.
Juventus hold a three-point lead over second-placed Inter Milan, who beat Udinese 2-0.
Lazio are a further two points adrift, with a game in hand, after top-scorer Immobile and Felipe Caicedo both scored twice in a 5-1 thrashing of rock-bottom SPAL.
Ronaldo slotted in his goals in either half in Turin, with Dutch defender Matthijs de Ligt heading in a third in injury time.
"Good to get back to victories and happy to score again in our stadium! Proud to reach 50 goals with the bianconeri shirt!," Ronaldo wrote on Twitter.
Juventus had fallen to just their second defeat of the season last weekend at coach Maurizio Sarri's former club Napoli.
Fiorentina president Rocco Commisso was furious at the penalty decisions that condemned his 14th-placed team.
"I am disgusted with what I saw today," blasted the Italian-born US businessman who bought the Tuscany club last year.
"Juve are very strong, a team with a wage bill of 350 million doesn't need help. Referees cannot decide matches.
"Today they gave two penalties against us, maybe the first was there but the second certainly wasn't."
Juventus vice-president Pavel Nedved hit back, declaring he was "a bit fed up of these controversies".
"Juve won with merit. Teams have to stop trying to look for excuses and accept defeat."
Ronaldo, 34, slotted in the opener five minutes before the break after German Pezzella's handball was confirmed by VAR.
His second came 10 minutes from time for a disputed Federico Ceccherini foul on Rodrigo Bentancur, making it 14 goals in nine games to bring his tally to 19 in Serie A this season, including seven penalties.
He also becomes the first Juventus player to score in nine straight league games since David Trezeguet in December 2005.
The former Real Madrid player has now scored 50 goals in 70 games since moving to Juventus in 2018.
Ronaldo is second only in the goalscoring charts this season to Immobile who now has 25 goals after Lazio kept alive their push for a first Scudetto since 2000.
Immobile volleyed in on just three minutes, with Caicedo scoring a rebound less than quarter of an hour later.
Immobile's second came before the half-hour mark and he then played a role in Caicedo's second seven minutes before the break.
Substitute Bobby Adekanye came on after the break with the former Liverpool youngster tapping in his first Serie A goal.
"Caicedo, Immobile and (Joaquin) Correa are untouchable," said Lazio coach Simone Inzaghi, whose side could move second when they play their postponed match against Hellas Verona next Wednesday.
In Udine, Lukaku grabbed a double to bring his tally to 16 league goals and get Antonio Conte's side back on track after three consecutive 1-1 draws.
The former Manchester United striker collected Nicolo Barella's pass and curled an excellent finish through the legs of Udinese defender Bram Nuytinck in the 64th minute.
And he added a second from the penalty spot seven minutes later when Udinese goalkeeper Juan Musso rushed out to fell Alexis Sanchez in the box.
"It's a great fight at the top," said Lukaku. "It's important for us to be up there too as we have a huge clash with Milan coming up."
Atalanta moved fourth despite being held 2-2 by struggling Genoa, jumping ahead of Roma on head-to-head record, after the capital side fell 4-2 at Sassuolo on Saturday.
Zlatan Ibrahimovic missed Milan's game with flu, with the eighth-placed northerners held 1-1 by 10-man Verona.
Torino plunged further into crisis, following last weekend's seven-goal thrashing by Atalanta with a 4-0 defeat by lowly Lecce.