Kalidou Koulibaly and Matteo Politano pounced on Juventus errors to turn the game around after Alvaro Morata’s early strike, putting Napoli eight points clear of the Bianconeri.
It was an incredibly aggressive start from the hosts, Matteo Politano nodding a Lorenzo Insigne cross over in the opening minute and a series of corners.
However, Alvaro Morata caught Kostas Manolas in possession near the corner flag after an awkward bobble and beat David Ospina from a tight angle with a splendid finish.
Manuel Locatelli needed a block on Politano, then Mattia De Sciglio made a decisive tackle on Insigne, but the Napoli captain almost gifted a goal with a poor back-pass that Dejan Kulusevski pounced on, Ospina coming to his rescue.
Adam Ounas came on for the restart and Osimhen had a swing and miss on the ball from a corner, but Napoli did get back on level terms.
Wojciech Szczesny seemed surprised by the trademark Insigne right-foot curler and just about got his hands to it, only pushing the ball a couple of yards, so Politano scored on the rebound from the tightest of angles.
Weston McKennie’s snapshot skimmed the far post and Insigne tested Szczesny again, while Mario Rui failed to finish off a good passing move.
Insigne went off with a muscular issue and Szczesny got a fingertip to the Fabian Ruiz screamer on the half-volley after a free kick had been cleared to the D.
Napoli were dominating the second half and took a deserved lead in chaotic circumstances. The corner sailed over Adrien Rabiot, Moise Kean did get his head to it, but turned the ball towards his own goal, where Szczesny could only fingertip it into the path of Koulibaly from a yard.
Morata (10′), Politano (57′), Koulibaly (85′)