Juventus need only a point to win the Serie A title after Carlos Tevez scored twice in a 3-2 home victory over faltering Fiorentina on Wednesday.
Juve suffered a shock derby defeat to Torino on Sunday and looked set to slip up again when Gonzalo Rodriguez put Fiorentina in front from the penalty spot in the first half.
The Turin giants came storming back, though, with Fernando Llorente ending his goal drought by scoring for the first time since he found the back of the net against the same opponents at the start of last month.
Tevez then took centre stage, heading the champions in front on the stroke of half-time and then taking his tally for the season to 28 in all competitions – and 20 in Serie A – after Rodriguez had missed a second spot-kick.
Josep Ilicic pulled a late goal back with a fine free-kick, but Massimiliano Allegri’s men saw out the victory and only need a draw at Sampdoria on Saturday to secure a fourth consecutive Scudetto as they still lead second-placed Lazio by 14 points with five games remaining
Fiorentina have now lost their last four matches in the league and have dropped to seventh in the table, so many yet need to win the UEFA Europa League to seal a place in Europe.
Leading scorer Tevez was back in the starting line-up and Claudio Marchisio made his 300th appearance for Juve as Allegri made six changes following the derby defeat.
Vincenzo Montella also made six changes, with Mario Gomez leading the line for Fiorentina.
Juve made an unconvincing start, but Llorente produced a moment of quality which had been lacking when he turned Rodriguez sharply in the penalty area before going to ground, only for referee Luca Banti to wave play on.
To make matters worse for the leaders it was Rodriguez who put the visitors in front from the penalty spot 33 minutes in, after Andrea Pirlo had hung out a leg and upended Joaquin just inside the penalty area.
Gianluigi Buffon guessed the right way, but was unable to keep out the Fiorentina captain’s clinical spot-kick diving to his left after referee Banti had words with a disgruntled Allegri on the touchline.
Juve were level just three minutes later, though, and in somewhat controversial circumstances as Neto was adjudged to have upended Stefano Sturaro outside the penalty area, despite there appearing to be no contact.
Pirlo made amends for giving away the penalty by swinging in the resulting free-kick for Llorente to head home and Tevez then put Juve in front on the stroke of half-time when he rose unmarked to head home Patrice Evra’s pinpoint cross.
Gomez claimed Evra held him back when he headed wide early in the second half as Fiorentina attempted to produced a fightback of their own.
A rousing comeback looked on when Giorgio Chiellini upended the tricky Joaquin after 66 minutes, but Rodriguez lacked composure on this occasion as he blasted the resulting penalty wide.
The defender was made to pay for that miss only two minutes later, when Tevez raced clear and took a touch before firing a shot into the far corner of the net.
Ilicic came off the bench to curl home a free-kick in impressive fashion after 90 minutes, but the damage to Fiorentina had already been done.