Mark-Anthony Kaye clinched the victory with a left-footed shot from 18 yards out that found the left side netting in second-half stoppage time.
William Yarbrough made three saves in posting the shutout for the Rapids (3-3-3, 12 points), who extended their home unbeaten streak to 21 regular-season matches. They avenged a 1-0 loss to the Timbers in last year's Western Conference semifinals.
Colorado played short-handed after Rubio received his second yellow card in the 63rd minute after an ungainly tackle.
The Timbers (2-3-5, 11 points) had a three-match unbeaten streak snapped. Portland entered Saturday having played two consecutive scoreless draws, one shy of the MLS record set by the Rapids at the outset of the 2015 season.
Rubio's right-footed kick sailed over the wall of Timbers defenders and then dipped into the upper left corner of the net, leaving Portland goalkeeper Aljaz Ivacic flat-footed. It was Rubio's team-leading fifth goal of the season.
The Rapids thought they had taken the lead in the 22nd minute when Lalas Abubakar forcefully headed home Rubio's corner kick, but a video review determined Lewis was offside on the play.
Kaye nearly doubled Colorado's lead in the 37th minute, but his shot from the middle of the penalty area went off the crossbar.
The Timbers had some good chances.
In the 42nd minute, Marvin Loria took a left-wing cross from Dairon Asprilla to the top right of the 6-yard box, chested the ball down and smashed a volley that Yarbrough came off his line to steer away.
Loria had another opportunity from about 12 yards in the 52nd minute, but his shot sailed well over the crossbar.
Portland's Santiago Moreno and Asprilla both put shots from the top of the 18-yard box just over the crossbar late in the game.