Luis Scola had 12 points and 10 rebounds and Shane Battier sank three 3-pointers for the Rockets, who've won four straight games and eight of the last nine McGrady has missed with a sore left knee. McGrady announced Wednesday that he'll have season-ending surgery, but Houston is 15-6 without him this season.
Aaron Brooks had seven points and three assists in his second game since replacing Rafer Alston as Houston's starting point guard. Alston was traded to Orlando on Thursday in a deal that brought Kyle Lowry to Houston to back up Brooks.
"It's a good thing that we know -- this is who we have, this is who we are," Scola said. "Now, everybody can take a role, whatever it is, and it's a good thing. I wish we could have everybody healthy. But this is who we have now, and we have to take it."
None of the Rockets will say they're a better team without McGrady, a seven-time All-Star, but they've played well in his absence by relying on effort and defense. Houston has held its last four opponents under 90 points after losing 124-112 in Milwaukee, McGrady's last game.
"We're kind of clicking," Scola said. "We are getting better. We are playing better defense, we are fighting and we are competing harder every day."
Raymond Felton, Boris Diaw and Emeka Okafor scored 13 points apiece for the Bobcats, who shot 36 percent from the field and had more turnovers (21) than assists (15) for the second straight game. Charlotte's 21 turnovers were one shy of a season high.
"Our offense was awful," Bobcats coach Larry Brown said. "We just turned it over so many times, that it puts so much pressure on your defense."
The Bobcats shot 37.5 percent in a 92-80 loss to Orlando on Friday and missed 13 of their first 18 shots Sunday. Brent Barry ended the first quarter with a 3-pointer off Brooks' second assist to give Houston a 27-20 lead.
Artest, a full-time starter with McGrady sidelined, scored eight points in the first quarter and hit two 3-pointers early in the second as Houston extended its lead.
The Rockets started 4-for-6 from 3-point range, then missed seven of their next nine and Charlotte cut the deficit to two. The Bobcats outrebounded Houston 25-19 in the first half and trailed only 44-42 at the break.
Yao scored six points and assisted on Battier's layup early in the third quarter as the Rockets rebuilt their lead. Battier sank two 3-pointers and Artest hit another 3 during a 17-5 Houston spurt that put the Rockets up 71-55.
The Bobcats went 0-for-5 from the field with two turnovers in the final five minutes of the third quarter. Von Wafer sank a 3-pointer and Barry turned a steal into a breakaway layup early in the fourth to stretch Houston's lead to 78-58.
"The first half, [it] seemed like we were closing the gap," Okafor said. "They started hitting their shots and we weren't hitting ours, and that's the way it goes sometimes."
The Rockets struggled early in the season to put teams away after building big leads. They've now won five of their last seven home games by double digits.
"We are really focused, focused on 48 minutes, not like before," Yao said. "Third quarter, OK, we come out ready to play. And then the fourth quarter, we let them come back. That's happened too much."
Yao left with 6:43 left, and the crowd roared as seldom-used Dikembe Mutombo trotted in to replace him.
The Rockets said McGrady is scheduled to meet with doctors Monday in Chicago to discuss treatments for his knee. ... Houston F Carl Landry missed his second straight game with a sprained right ankle. ... The Bobcats have lost seven of their last eight road games. ... Charlotte went 4-for-19 from 3-point range.