Marek Hamsik gave Walter Mazzarri's side the lead in the 31st minute, but Giampiero Pinzi responded for the Zebrette, who simply would not lie down.
But Goran Pandev restored the home side's lead on the stroke of half time and they defended resolutely throughout the second half to pick up their sixth win in seven Serie A matches, leaving Udinese struggling in the bottom half of the table with only one win all season.
Antonio Di Natale was back in the Udinese team for a Serie A game after being left out a week ago and he had the first chance of the game in the seventh minute, but he missed the target from Giovani Pasquale's cross.
A minute later, Hamsik tested Zeljko Brkic, who was up to the challenge, pushing the ball away.
There was nothing the Udinese goalkeeper could to to prevent the Slovakian giving Napoli the lead on the half-hour mark, though, as Hamsik was picked out by Christian Maggio, himself set up well by Edinson Cavani.
Pandev wasted the chance to make it two in the 42nd minute, and Udinese hit back immediately with Pinzi equalising less than 60 seconds later.
Maicosuel was the provider, picking out Pandev with a fine pass.
Udinese were unable to remain on terms for more than two minutes, though, with Pandev making up for his earlier mistake, dummying a shot with his left foot before beating Brkic with his right.
Napoli seemed to sit on their lead a little in the second half, yet it was not until Paulo Barreto came on that Udinese started to make any inroads.
The Brazilian was unfortunate to be called offside when he broke and took the ball round Morgan de Sanctis, although his touch took the ball wide of the target and, even without the linesman's flag, the chance was practically gone.
Udinese coach Francesco Guidolin failed to hide his frustrations and he was sent to the stands with less than 15 minutes remaining.
From there, he would have seen Marco Faraoni miss his side's last chance to equalise in stoppage time with a shot from just outside the area which only just missed the angle of post and crossbar.