Weaver (10-8) surrendered two runs on six hits, issuing one walk while striking out five as the Angels bounced back from a 9-7 loss in Friday's three-game series opener.
Iannetta's solo blast put Los Angeles ahead to stay and the catcher added a run-scoring single during a three-run fourth inning that iced the contest.
Houston's Brett Oberholtzer (4-3) was touched for four runs on six hits over six innings.
Brett Wallace bashed a two-run homer for the Astros.
Millions of Getty images now available for free via embed tool
Aaron Carter is still in love with Hilary Duff