Alessandro Matri's strike 12 minutes from time sank second-placed Juve, giving leaders Inter Milan the chance to extend their advantage over their old rivals to nine points with a home win over Torino on Sunday.
Claudio Ranieri's side, who lost 2-1 at Udinese on Wednesday, went behind on 16 minutes when Davide Biondini outjumped Marco Marchionni to head in at the far post.
Momo Sissoko then glanced in an equaliser before fellow midfielder Pavel Nedved chested down and fired home on 38 minutes to put Juve ahead, although replays suggested the ball had gone out of play in the build-up.
Cagliari held Inter to a draw earlier this month and the Sardinians went one better when striker Jeda finished off a quick breakaway on 54 minutes before Matri scored a carbon-copy winner with Juve's defence nowhere.
Fabio Quagliarella earlier smashed in a stunning 20-metre volley to give Udinese a 2-2 draw at Napoli.
Stuttering Napoli were 2-0 up after 27 minutes thanks to Ezequiel Lavezzi's deflected shot and a header from midfielder Marek Hamsik, back following a two-game ban.
Antonio Di Natale pulled one back from the penalty spot before Italy team mate Quagliarella, born in Naples, struck spectacularly on the stroke of halftime.
Like all Italian games this weekend, the two matches kicked off 15 minutes late because of a protest over the Court of Arbitration for Sport banning Napoli's Daniele Mannini and Brescia's Davide Possanzini for a year for being late for a 2007 drugs test.
Thank you for reading 5 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1
Get daily World Cup 2022 news, updates and other football frolics to your inbox
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.