Rookie Carl Landry added 14 points and seven rebounds, and reserve guard Bobby Jackson had 13 points as the Rockets won easily, despite playing without defensive specialist Shane Battier, who sat out with a bruised left foot and ankle.
Amare Stoudemire scored 37 points and Shaquille O'Neal added 16 points for the Suns, who mustered their lowest point total since a 116-86 loss to Detroit on Feb. 24.
The Rockets moved 1 1/2 games ahead of the Suns in the Western Conference standings.
Phoenix shot 46 percent (35-of-76), but committed 15 turnovers that led to 13 points for the Rockets. Houston had only five turnovers, matching a season low, and scored 19 points off 13 offensive rebounds.
Stoudemire hit nine of his first 11 shots and scored 18 points in the first 10 minutes.
The Rockets hit six of eight shots after the sluggish start and Jackson's reverse layup with 21 seconds left in the opening quarter gave Houston its first lead, 29-28.
The Rockets led 59-47 at the break after finishing the half with an 18-8 spurt. Houston outrebounded Phoenix 22-14 and scored 12 points off 11 turnovers by Phoenix in the first two quarters.
Houston pushed the lead to 16 early in the third quarter and the Suns became visibly frustrated. Dikembe Mutombo blocked Stoudemire's shot on a drive and Stoudemire gave Mutombo a retaliatory elbow. The two jawed at each other on the Suns' next possession and players from both teams separated them.
After a 2-for-9 start, McGrady scored 10 points in the third quarter as Houston stayed comfortably ahead. McGrady drew the defense, then passed to Landry for a layup that put the Rockets up 77-61 with 2:13 left. Landry was fouled by Stoudemire and added a free throw to give Houston its biggest lead.