De'Andre Hunter also had 20 points for the Cavaliers (21-2, 9-2 Atlantic Coast Conference), who played with veteran poise down the stretch after trailing for a good chunk of the second half.
The Cavaliers were coming off a second loss this season to No. 2 Duke and arrived in Chapel Hill facing the prospect of their first losing streak of any kind in two years. Yet Guy and his teammates rallied from seven down in the final eight minutes to snap UNC's seven-game winning streak.
Coby White scored 17 points to lead the Tar Heels (19-5, 9-2), who were off to their best start in league play under 16th-year coach Roy Williams. UNC shot just 35 percent for the game.
Virginia: The Cavaliers' home loss to the Blue Devils on Saturday gave them more league losses than all of last year, when they went 20-1 against ACC teams to sweep the regular-season and tournament titles. Yet as it always seems to do, Virginia stuck to its unhurried offensive pace and stubborn defense to hang around as UNC threatened to stretch the lead. And when the Cavs got their opening, Guy pounced by hitting two huge shots.
UNC: The Tar Heels had Michael Jordan in the house for this game and plenty of momentum. But after managing to speed up Virginia in the second half to get out in transition, the Tar Heels sputtered down the stretch when they had a chance to seize control. UNC had to go much of the way without key freshman reserve Nassir Little, who injured his right ankle with 12:06 left in the first half and didn't return.
Virginia: The Cavaliers return home to host Notre Dame on Saturday.
UNC: The Tar Heels visit Wake Forest on Saturday.
More AP college basketball: https://apnews.com/Collegebasketball and https://twitter.com/AP_Top25
Follow Aaron Beard on Twitter at https://twitter.com/aaronbeardap
Copyright 2019 The Associated Press. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.