Yordano Ventura (1-0) struck out a career-high seven and surrendered two runs -- one earned -- on four hits and three walks over seven innings for Kansas City, which was swept in Minnesota over the weekend.
Eric Hosmer cracked an RBI double among his two hits in the triumph.
Lucas Harrell (0-3) yielded four runs on five hits and three walks over five frames for the Astros, who have dropped six of their last eight games.
The game was tied 1-1 after both teams plated a run in the first, but the Royals pushed across a pair in the third and another in the fifth to surge in front.
Lorenzo Cain led off with a sharp single into the gap in left-center and advanced to third when the ball darted past the glove of left fielder Robbie Grossman and trickled all the way to the wall.
Norichika Aoki walked two batters later and Infante grounded into a force out to bring Cain home. Infante crossed the plate when Hosmer drilled a double off the top of the left-field wall.
Billy Butler's sacrifice fly in the fifth gave KC a 4-1 advantage.
Houston got a run back in the home half on Carlos Corporan's one-out homer to right, but Wade Davis fanned two in a 1-2-3 eighth and Greg Holland struck out the side in the ninth to notch his fourth save of the year.
Earlier, Infante's one-out shot to left opened the scoring, but Houston tied it in the home half when Dexter Fowler began the inning with a double and later scored on an errant pickoff attempt.