Inter's Champions League hopes came to an end as they were comfortably beaten 2-0 by Lazio on Sunday.
Roberto Mancini's side needed a victory to keep their top-three chase alive, but Miroslav Klose's early goal gave them a deficit they never looked likely to claw back at the Stadio Olimpico.
Antonio Candreva converted a late penalty to secure the win after Jeison Murillo had been sent off, ensuring three points for Lazio and guaranteeing that Serie A's Champions League spots will go to Juventus, Napoli and Roma.
The champions themselves recorded a 25th win in 26 matches thanks to a 2-0 victory at home to Carpi.
Hernanes opened the scoring late in the first half with his maiden goal for the club, and Simone Zaza wrapped up the points by turning home Paul Pogba's cross late on, as Juve cruised to another win and a 10th consecutive home clean sheet in the top flight.
AC Milan snatched a point from a thrilling clash with Frosinone which finished 3-3 at San Siro.
Luca Paganini opened the scoring after just two minutes and Oliver Kragl made it 2-0 to Frosinone just before half-time, before Mario Balotelli's dismal season was compounded as he missed a penalty.
Carlos Bacca halved the deficit but Federico Dionisi scored just four minutes later, and Frosinone looked set to hang on despite Luca Antonini's goal making it 3-2 with just 16 minutes to play.
But Jeremy Menez rescued a draw from the penalty spot in injury time to keep Milan in the hunt for a top-six finish, and leave Frosinone four points from safety with just two games to play.
Palermo gave their own relegation battle a huge boost as they beat Sampdoria 2-0 to move level on points with 17th-placed Carpi, thanks to Franco Vazquez's first-half strike and an own goal from Nenad Krsticic just five minutes from time.
Sassuolo, meanwhile, remain sixth - a point clear of Milan - thanks to Lorenzo Pellegrini's solitary strike against already-relegated Hellas Verona.