Courtney Lee added 16 as the Houston reserves accounted for 66 points.
"They deserved to be out there because they played well," McHale said. "It's just one of those things where if they're rollin' we're going to let them go."
Lee played nearly 31 minutes and Budinger was just over 29.
"The chemistry level is up for us right now," Budinger said.
The Rockets had a scare late in the third quarter when starting guard Kyle Lowry injured his right elbow and left the game. The team later said it was a strain.
"It's a little bit sore but we're just going to treat it," Lowry said. "I don't want to sit out any games, so I'll see how it feels in the morning."
Lowry had 12 points when he left.
On the other side, Portland forward LaMarcus Aldridge said he was fighting an illness. Averaging 23.7 points going into the game, Aldridge finished with 13.
"It was just me," he said. "I didn't have the energy tonight."
Houston led by as many as 19 in its second straight win on the road. The Rockets were coming off a 99-90 victory at Denver on Monday night. They continue a six-game road trip Thursday night in Phoenix.
Jamal Crawford came off the bench to score 21 points for the Blazers, who rallied to tie the game at 77 on Aldridge's dunk in the fourth quarter. Portland hung close for a while before the Rockets had an 8-0 run to go up 90-82.
It was Portland's second straight loss at the Rose Garden and its third at home this season.
The Blazers were coming off an emotional 111-107 overtime defeat at home against Oklahoma City on Monday. Portland led 103-101 with 6 seconds left when Aldridge was called for goaltending on Kevin Durant. That tied the game, which went to overtime, and the deflated Blazers were outshot by the Thunder.
The next day, the NBA posted a statement on its website that officials in the game had made an incorrect call.
Crawford said he wasn't sure if that loss had any bearing on Portland's showing against the Rockets.
"You hope that emotional games don't have lingering effects," he said. "We'll have to figure that out."
Crawford's 3-pointer pulled the Blazers to 39-38 in the second quarter, but the Rockets pulled away, going up 58-44 on Lowry's 3. Luis Scola was 5 for 5 from the floor to start the game, but spent a lot of the second quarter watching while the Rockets' reserves built the lead to as many as 14 points.
Houston led 60-46 at the break before Scola hit a 3 that put the Rockets up 71-56 midway through the third. Late in the quarter, Lowry headed for the locker room holding his right arm.
Portland pulled within 77-75 when Crawford hit a 3 early in the fourth, and Aldridge tied it with a dunk that made it 77-all with 9:57 left. But the Rockets quelled the rally and extended their lead to 90-82 after Budinger's jumper and Goran Dragic's layup.
"He (McHale) is the kind of coach where he runs with players that are playing well," Budinger said. "We got it rolling in the first half and he left us in there and didn't panic when they tied it up."
Lee's 3-pointer with 4:13 left made it 93-86, and Portland could not make up ground.
"We've just got to come together collectively and figure this thing out as a team. That's all there is to it," said Blazers guard Raymond Felton, who returned to the starting lineup after missing the game against Oklahoma City because of a left foot strain.
The win was Houston's third straight against the Blazers.
"That's always a good thing, whenever the second unit can give the starters a rest when we have a game the next day," said Patrick Patterson, who finished with 11 points in nearly 24 minutes. "I think each person should be pleased with their play, and overall this was a team win."
Gerald Wallace added 20 points and nine rebounds for Portland, which goes on the road for a game at New Orleans on Friday.
The NBA announced that Houston will host the 2013 All-Star Game. ... For Military Appreciation Night at the Rose Garden, the Blazers honored 91-year-old Carl Deiz, who served with the famous Tuskegee Airmen during World War II. ... The Rockets signed 6-foot-10 center/forward Greg Smith. He was averaging 16.8 points and 8.3 rebounds with the D-League's Rio Grande Valley Vipers.