Mustapha Farrakhan added 17 points as the Cavaliers (7-3) won their fourth straight despite being without scoring and rebounding leader Mike Scott. The senior low post player had arthroscopic surgery on his left ankle Thursday to have pieces of cartilage removed.
Oregon (7-4) had its three-game winning streak snapped. The Ducks got 16 points from Joevan Catron but little from anyone else as they shot just 34.5 percent overall (19 of 55).
The Cavaliers led just 33-31 when Harrell hit a jumper and Farrakhan followed with a huge block on Jeremy Jacob that roused the crowd, then quickly hit a 3-pointer at the other end.
After Harrell scored again, the Ducks pulled within 40-36 before Zeglinski beat the shot clock with a long 3-pointer from the left wing. He hit another from well behind the top of the key, again with the shot clock winding down, to make it 48-38 with 5:39 remaining.
The Ducks never threatened again.
Zeglinski, who missed the first seven games of the season after knee surgery, finished with 12 points, his first of the season. He came into the game 0 for 6 from the field.
Virginia went with four guards at the start, including Harrell and fellow freshman Joe Harris, and looked shaky at the outset. Oregon got scoring from six players in a 15-2 run to take a 15-6 lead after 10 minutes, but Virginia outscored the Ducks 19-7 the rest of the half.
The Cavaliers had seven turnovers in the first 10 minutes, and none the rest of the half when the Oregon's poor shooting rarely allowed the Ducks to get their full court press set up.
Oregon also missed 11 of 12 shots from 3-point range in the half.