The home side, who missed a penalty before the interval through Gonzalo Higuain, could slide back down to second later today as the Partenopei - currently level on 27 games played - travel to Inter Milan this evening.
Buoyed by their progression into the last eight of the Champions League four days ago, Juve eventually came good but initially had to ride their luck.
Dybala opened the scoring for the home side less than a quarter of the way through, though, by sending a free kick of his own up and over the wall into the top corner.
Juve should have doubled their advantage before the break, only for Higuain to see his spot kick kept out by Albano Bizzarri after the lively Dybala was brought down inside the box.
Higuain was to be denied by Bizzarri later in the half, too, but the striker redeemed himself somewhat four minutes into the second half when setting up Dybala for his second.
After holding off his man, Higuain picked out Dybala to do the rest with an angled drive past Bizzarri, putting Juventus on their way to an 11th successive league match in which they have conceded just one goal.
Substitute midfielder Blaise Matuidi nearly converted from another Higuain pass, while Dybala was denied a hat-trick by Bizzarri at his front post later in the match.
Juve's only other real effort of note saw Dybala, the matchwinner against Tottenham Hotspur in midweek, pick out the side-netting from a good position.
JUVENTUS (4-3-3): Szczesny; De Sciglio, Rugani, Chiellini, Asamoah; Khedira (Matuidi 62'), Marchisio, Sturaro; Douglas Costa (Bentancur 88'), Higuain (Mandzukic 74'), Dybala
UDINESE (3-5-1-1): Bizzarri; Nuytinck, Angella, Samir; Widmer, Barak (Balic 70'), Behrami (De Paul 76'), Fofana, Ali Adnan; Jankto; Maxi Lopez (Perica 61')