The Ducks came into the game on a nine-game winning streak and with a two-game lead in the Pacific-12 Conference, but they managed only 36 percent shooting and turned the ball over 21 times.
Oregon was within reach early in the second half, trailing by 10, but Stanford then blew the game open with a 12-0 run and coasted from there.
Josh Huestis added 14 points for the Cardinal and both Aaron Bright and Dwight Powell had 12.
Stanford (13-8, 4-4 Pac-12) has won three of its last four.
Carlos Emory, with 10 points, was the only player in double figures for Oregon. The Ducks (18-3, 7-1) now lead both Arizona and Arizona State by 1 1/2 games in the conference chase.
Ron Burgundy interviews Peyton Manning on SportsCenter
Martin Bashir resigns from MSNBC over Sarah Palin comments