Virginia's Marc Verica completed 24-of-38 passes for 217 yards for Virginia (4-3, 2-1 ACC), which has won three straight games.
The Tar Heels (5-2, 1-2) turned the ball over three times. North Carolina's Cameron Sexton had two interceptions while completing 16-of-25 passes for 166 yards.
Shaun Draughn rushed for 138 yards on 30 carries. Hakeem Nicks had six receptions for 90 yards for Carolina.
Ryan Houston scored a rushing touchdown for Carolina, which had a three-game winning streak snapped.
Celebrity Couples of 2014 [PHOTOS]