Milan frustrated again in draw at home with Lazio
Felipe Melo seals Juve win after fan protests
Milan wasted the latest in a series of chances to boost their Serie A title hopes when a depleted side were held 1-1 at home by Lazio last night.
Roma beat leaders Inter 2-1 on Saturday to cut the gap at the top to a point but Milan remained third rather than moving level with the Romans after another unconvincing display.
Marco Borriello, standing in as penalty-taker with Ronaldinho suspended, converted from the spot on 18 minutes but Stephan Lichtsteiner scrambled in the equaliser on 32 minutes.
Earlier in the day, Felipe Melo gave Juventus fans a rare reason to cheer after bagging the winner eight minutes from time in a 2-1 home win over third-from-bottom Atalanta.
Angry fans protested before kick-off about the team's plight this season and Juve looked to be heading for another poor result until the Brazil midfielder, often ridiculed by supporters this term, netted with a header.
Juve, Napoli and Sampdoria are three points behind Palermo, who occupy the fourth and final Champions League qualifying spot in Serie A with seven games left and beat Bologna 3-1 on Saturday.
Juve's Alessandro Del Piero bent in a sublime free-kick on half an hour after his side had made another laboured start, although David Trezeguet had a goal ruled out for offside.
The hosts, who have made no marked improvement since Alberto Zaccheroni replaced Ciro Ferrara as coach in January, paid for their lacklustre approach when former striker Nicola Amoruso was left in space in the area to comfortably equalise on half-time.
Substitute Felipe Melo, the latest in a long line of Juve signings to flop since his expensive move from Fiorentina in the close-season, then nodded in Del Piero's cross to surprise fans.
"I'm happy for him, he's scored a great goal. We've got to continue like this. We'll only worry where we are when it is the end of the season," Del Piero told Sky television.
Supporters protested against directors and players outside the team hotel before the game and threw eggs at the bus as it arrived at Turin's half-empty Stadio Olimpico.
Atalanta, who had won their last two games to boost hopes of escaping relegation, could easily have scored again having exposed Juve's shaky defence several times in both halves.
Playmaker Diego joined the Juve injury list when he went off in the first half.
Missing the Champions League would hit twice winners Juve almost as hard as their 2006 Serie A demotion for match-fixing.
Napoli overcame Catania 1-0 at home thanks to Paolo Cannavaro's goal but Samp missed the chance to hold fifth spot alone when they were held 1-1 at home by Cagliari in a bad-tempered game.
At the bottom, Livorno look doomed after a 1-1 home draw with Bari left them seven points away from safety.
Second-from-bottom Siena dominated Genoa but drew 0-0 and lie six points behind fourth-from-bottom Udinese, who were hammered 4-1 at Fiorentina.