Weaver held Philadelphia in check into the sixth inning, Casey Kotchman homered and the Angels beat the Phillies 3-2 Sunday to complete a three-game sweep.
Weaver (7-7) allowed one run and four hits in 5 1/3 innings for AL West-leading Los Angeles, which has won eight of its last nine road games. The Angels are a major league-best 24-12 on the road this season.
Los Angeles limited the skidding Phillies to five runs in the series.
"We beat a real good team by pitching well," manager Mike Scioscia said. "The way we pitched in this series was just lights out. We got three in the end."
Francisco Rodriguez pitched a scoreless ninth for his major league-leading 30th save in 32 opportunities.
Cole Hamels (7-5) gave up three runs and six hits in seven innings for the Phillies, who have lost five straight and seven of nine.
Philadelphia has lost four straight series since it swept the Braves in Atlanta.
"We're a team of fighters," Hamels said. "We've been that way for the last two years and it's something to tap into now when we're struggling a little bit."
The Angels pushed across three runs in the second inning. Vladimir Guerrero led off with a single, extending his hitting streak to 13 games. Guerrero moved up on Torii Hunter's groundout and scored when Gary Matthews Jr. singled to center.
Kotchman followed Matthews with a two-run drive to right to make it 3-0. It was Kotchman's eighth homer of the season.
"He just highlights the lineup," Scioscia said. "That ball went a long way. And his pick at first in the ninth inning was big."
Jimmy Rollins stole a pair of bases in the first, giving the reigning NL Most Valuable Player a major league-best 31 consecutive steals, dating to last season. Rollins has 17 stolen bases this season.
Rollins also had an RBI double in the seventh for the Phillies, who have scored only nine runs during their losing streak.
"We're struggling, but we'll keep battling through it," center fielder Shane Victorino said.
The Phillies stole a season-high four bases. ... Los Angeles' Reggie Willits singled in the eighth to break an 0-for-22 streak. ... Guerrero is hitting .442 (23-of-52) during his 13-game hitting streak. ... The Phillies have sold out nine straight games at Citizens Bank Park. Overall, they have recorded 22 sellouts.