CHAPEL HILL, N.C. -- Virginia is starting to get the hang of winning.

Kurt Benkert passed for 249 yards and two touchdowns to help the Cavaliers beat North Carolina 20-14 on Saturday.

In the past years, we didn't pull these games out,'' Virginia wide receiver Olamide Zaccheaus said. "We're just confident in what we're capable of doing. There's never like a worry or a fret or anything. We're just confident, and we keep playing.''

Jordan Ellis rushed for a career-high 136 yards for the Cavaliers (5-1, 2-0 Atlantic Coast Conference), who are off to their best start since 2007. Virginia snapped its seven-game losing streak against North Carolina with its fourth consecutive victory overall.

Chris Peace sacked North Carolina's Brandon Harris on fourth down with 1:07 left to seal the win

The Cavaliers took the lead for good on an 81-yard touchdown catch by Zaccheaus in the third quarter.

A week after the Cavaliers outlasted Duke 28-21, they controlled the ball for nearly 40 minutes and ran 25 more plays than North Carolina.

They scored just one touchdown in four trips inside the red zone, so it wasn't a pretty performance. But it was effective.

"If that is our brand at this stage of the program's development, then that's our brand,'' Virginia coach Bronco Mendenhall said.

Freshman Michael Carter rushed for a season-high 157 yards and two touchdowns for North Carolina (1-6, 0-4). Carter ran for 127 yards and both of his scores in the third quarter as the Tar Heels came back from a 10-0 halftime deficit.

North Carolina lost its fourth straight game despite a change at quarterback.

Chazz Surratt, who had started each of North Carolina's last five games, did not play. Harris replaced him, completing 7 of 18 passes for 46 yards and three interceptions.

The Tar Heels went scoreless in the first half for the second time in three weeks. They had just four first downs and 75 yards of offense at halftime to go along with five penalties for 46 yards.