Jeremy Lin added 18 as the Rockets tied their longest winning streak of the season, a mark set in late November.
Nate Wolters, who scored a career-high 19, sparked the Bucks with seven points during a 16-7 run to open the second half and that pulled them to 63-61. The Rockets quickly answered with baskets by Patrick Beverley and Terence Jones, and then Harden added seven points to prevent Milwaukee from getting any closer using an 18-8 run to end the third and take an 81-69 lead into the fourth.
Brandon Knight scored 23 points and Khris Middleton 20, including three free throws after being fouled behind the arc with 46.6 seconds remaining as Milwaukee came back to trail 98-95. Howard made three of four free throws for Houston's final points and seal the win.
The Bucks were already down to four reserves before an inadvertent elbow from Harden knocked Larry Sanders out of the game with 7:37 left in the first quarter. The two were fighting for a rebound under the Bucks' basket. Sanders fell to the floor for a few moments before walking off. He did not return due to blurred vision. No further medical information was available.
Luke Ridnour (back), Ekpe Udoh (ankle), Ersan Ilyasova (back), O.J. Mayo (illness/conditioning) and Caron Butler (ankle) missed the game for Milwaukee.
Lin came off the bench to score 11 points in the first half as Houston shot 53.5 percent and took a 56-45 lead at the half. Harden added 11 points and then helped Howard get his 11th just before the half ended on a slick alley-oop. Howard had just converted a three-point play when Harden lofted a pass that the Rockets' center dunked for a 15-point lead.
NOTES: Rockets C Omer Asik returned after missing the last 31 games with a right thigh/knee injury, but F Greg Smith' sore right knee kept him back in Houston. He's played in only 11 games so far this season. . Howard is 17 of 18 in career games against the Bucks. . The Rockets are 12-0 when Howards scored at least 20 in the last six weeks, compared to (2-6) when he doesn't.