Alessandro Nesta put Milan ahead in the 29th minute with Ronaldinho adding a second in the 72nd minute as Juve struggled to produce a performance that would ease the calls for Ferrara's head.
Another goal from Ronaldinho two minutes from time came amid protests from the home fans, who shrouded the field with smoke by burning any item possible, and sealed the win for Milan - now eight points behind Inter with a game in hand.
Napoli beat Sampdoria 1-0 to remain in 4th, and in the race for Champions League football after substitute German Denis came off the bench to score the winner against Sampdoria on Sunday.
On Saturday night Inter Milan twice came from behind to claim a thrilling 4-3 victory over Siena as Wesley Sneijder and Walter Samuel scored late goals in the top-versus-bottom clash at the San Siro.
And a first-minute goal from Daniele De Rossi was enough to give 10-man Roma a 1-0 victory over Chievo which moves them up to fifth in the table.
Rossi headed in from a corner to give the hosts the lead at the Stadio Olimpico, but they had goalkeeper Doni sent off after he handled the ball outside the area after coming out as Elvis Abbruscato charged through on goal.
CLUB Pl W D L GD Pts Inter Milan 19 14-3-2 +24 45 AC Milan 18 11-4-3 +12 37 Juventus 19 10-3-6 +7 33 Napoli 19 9-6-4 +5 33 AS Roma 19 9-5-5 +6 32 Fiorentina 18 9-3-6 +8 30