Juventus restored its three-point advantage at the top of Serie A with a 2-0 win at Atalanta on Sunday.
Andrea Barzagli and Mario Lemina scored for Juventus while Gianluigi Buffon had a ninth successive clean sheet. The goalkeeper has not been beaten in Serie A in 836 minutes, the third-longest stretch in league history.
Napoli beat Chievo Verona 3-1 on Saturday.
"The lads are doing well, we have won 17 of the last 18 matches but the second and third teams are still close," Juventus coach Massimiliano Allegri said. "The title will be decided on the last day.
"We did well in the first 50 minutes, then there was a drop and in that regard we have to improve in managing the lead."
Below them the battle for third place and final Champions League spot is heating up. Fifth-place Inter Milan hosts Palermo later and is currently eight points behind Roma, which beat Fiorentina on Friday to move three points clear of its opponent.
AC Milan could have leapfrogged Inter, temporarily at least, but lost 2-0 at 10-man Sassuolo. Coach Sinisa Mihajlovic was sent off for dissent after the second goal.
"I am very angry with us and the referees but I don't speak about referees," Mihajlovic said. "We dominated in the first half-hour but as often happens, we struggle to score goals. We can't create chances and then concede on our opponents' first chance.
"I protested because he didn't blow for a foul," he said. " I was angry also with my players who stopped, which they shouldn't have done."
At the other end of the table, Frosinone beat fellow struggler Udinese 2-0 to give it hope of avoiding relegation. It is one point below Palermo, which occupies the last safe spot in Serie A. Carpi is five points from safety after drawing 0-0 at Bologna.
Genoa also boosted its chances of escaping the drop with a 1-0 win over Empoli.
Torino missed a penalty for the second time in three matches as it drew 1-1 against Lazio in the lunchtime kickoff.
Juventus was looking to bounce back from a surprise 3-0 defeat to Inter midweek in the Italian Cup -- although it qualified for the final on penalties.
It took the lead in the 24th minute through an unlikely goalscorer as a corner was knocked down by Mario Mandzukic for the unmarked Barzagli to volley in from six yards.
It was his second goal for Juventus, almost four years after his first, which also came against Atalanta.
Lemina sealed the win four minutes from time, skipping past two Atalanta players before unleashing a powerful shot from the edge of the area.
Buffon's record chase came under threat right at the end but he got down smartly to turn Andrea Masiello's effort around the post.
The unbeaten record in Serie A is held by Sebastiano Rossi, who kept a clean sheet for 929 consecutive minutes for AC Milan from Dec. 12, 1993, to Feb. 27, 1994, beating the previous mark set by former Juventus goalkeeper Dino Zoff in 1972-73 by 26 minutes.
Milan was full of confidence after a run of 12 matches undefeated in all competitions.
It almost got off to the perfect start but Sassuolo goalkeeper Andrea Consigli did well to deny Keisuke Honda twice while a Carlos Bacca effort was deflected out for a corner.
Sassuolo broke the deadlock in the 27th minute with a well-worked corner from Domenico Berardi, which the onrushing Alfred Duncan smashed into the top right corner from just outside the area.
Sassuolo doubled its lead in the 72nd in controversial circumstances as there appeared to be a foul in the buildup but play continued while Andrea Bertolacci was down.
Sassuolo forward Gregoire Defrel was sent off four minutes later for a second yellow card.