The win evens the Astros record after six games, and Feldman has now won both of his starts.
With Jonathan Villar Jason Castro got the Astros on the board in the bottom of the first by launching a 3-1 Jered Weaver changeup over the wall in left center field for his first home run of the season.
In the second inning, Matt Dominguez made it a 3-0 game when he sent a 3-2 slider from Weaver over the Crawford Boxes for his second homer of the year.
After Feldman retired the first Angels he faced, he ran into trouble in the third inning. He hit a man, and walked a man to give the runners at first and second with one out, but Kole Calhoun lined into a double play to end the threat.
Houston got its third home run of the day when Jesus Guzman ripped an 0-1 Weaver fastball into the Crawford boxes for his second of the year, to make it 4-0.
Feldman allowed a run for the first time this season in the fifth, but on the second pitch of the bottom of the inning, Alex Presley answered with his first home run of the season to get the score to 5-1 Astros.
Weaver left the game in the sixth inning, but against Matt Shoemaker they extended their lead when Villar took Matt Shoemaker deep with a runner on in the bottom of the seventh to make it a six run game.
After Feldman left, Anthony Bass retired the side in order in the eighth, but allowed a three of runs in the ninth and had be lifted for Chad Qualls who struck out Kole Calhoun with two on base to end the game, earning him the save.
Guzman was the only Astro with a multi-hit game.
Weaver allowed four home runs in a game for the third time in his career, the first since 2008. He has lost his first two starts of the season.
Josh Hamilton and Howie Kendrick had two hits for Los Angeles, but the top two in the Angels order, Calhoun and Mike Trout, went hitless in nine at bats.
LATEST SPORTS STORIES: