Cristiano Ronaldo stretched his scoring streak to nine consecutive league games with a penalty double on Sunday as Serie A leaders Juventus bounced back from last weekend's defeat to Napoli with a 3-0 win over Fiorentina.
Lazio moved second five points behind the reigning champions after Serie A top scorer Ciro Immobile and Felipe Caicedo both scored a brace in a 5-1 win over rock bottom SPAL.
Inter Milan, one point behind in the Romans in third place, travel to Udinese later on Sunday looking to reclaim second spot.
Ronaldo slotted in both his goals from the spot in either half in Turin with Dutch defender Matthijs de Ligt heading in a third in injury time.
Juventus had fallen to just their second defeat of the season last weekend at Sarri's former club Napoli, despite Ronaldo scoring.
"Cristiano Ronaldo continues to score repeatedly and for him it's important psychologically," said Sarri of the player who turns 35 years old next Wednesday.
"Physically he's good and making a difference."
Fiorentina, in 14th position, have had a resurgence since Giuseppe Iachini took over on December 24, but suffered their first league defeat this year.
Club president Rocco Commisso was furious at the penalty decisions.
"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."
- Lazio maintain title push -
Fiorentina tested Juventus goalkeeper Wojciech Szczesny early with the Pole getting his hand to Federico Chiesa's back-heel kick and a Pol Lirola effort.
Fellow Pole Bartlomiej Dragowski denied Rodrigo Bentancur at the other end before a VAR review confirmed Fiorentina's German Pezzella had handled the ball in the area.
Five-time Ballon d'Or winner Ronaldo made no mistake, slotting in five minutes before the break.
His second came 10 minutes from time for a disputed Federico Ceccherini foul on Bentancur.
Ronaldo made it 14 goals in nine games to bring his tally to 19 this season, including seven penalties.
The former Real Madrid player has now scored 50 goals in 70 games since moving to Juventus in 2018.
He also becomes the first Juventus player to achieve a run of goals in nine consecutive league games since David Trezeguet in December 2005.
De Ligt nodded in a Paulo Dybala cross in stoppage time for his first goal for Juventus at the Allianz Stadium, as Iachini fell to his first league defeat with the Tuscany side.
Ronaldo is second only this season to Immobile, who has scored 25 goals, including two on Sunday as Lazio kept their push for their first Serie A title since 2000 alive.
Immobile got Lazio off the mark volleying in after just three minutes, with Caicedo finishing off a rebound less than quarter of an hour later.
Immobile's second came before the half hour with a deflected shot and he played a role in Caicedo's second seven minutes before the break.
Substitute Bobby Adekanye came on after the break with the former Liverpool player tapping in his first Serie A goal after an hour with Simone Missiroli pulling a goal back for SPAL.
Atalanta were held 2-2 by struggling Genoa but moved into fourth place and the final Champions League ahead of Roma on goal difference after the side from the capital fell 4-2 at Sassuolo on Saturday.
Swedish star Zlatan Inbrahimovic missed AC Milan's game because of a bout of flu with the eighth-placed northerners held 1-1 by ten-man Hellas Verona, who are just behind them.