Malcolm Brogdon scored 12 points to lead the Cavaliers (22-5, 13-1 ACC), who outscored Tech (9-16, 2-11) in the second half 36-25.
London Perrantes added 11 points and Akil Mitchell scored seven points and was credited with 10 rebounds.
Virginia Tech outrebounded the Cavaliers 29-28 but committed 14 turnovers to Virginia's seven.
Devin Wilson and Joey Van Zegeren both scored 13 for the Hokies, who have lost 11 of their last 12 games.
Virginia Tech led 28-21 at halftime and was poised for the upset in the home stretch but Justin Anderson and Joe Harris combined for a 10-0 run that gave the Cavs the lead 52-46 with 38 seconds to play.