OAKLAND, Calif. -- Brandon McCarthy won for the first time in nearly three months but it was teammate Josh Willingham's home run into the second deck that had the Oakland Athletics' clubhouse buzzing.
Willingham hit a towering two-run shot off Angels starter Dan Haren in the third inning, his 12th of the season and the first to reach the upper level in left field at the Oakland Coliseum since Frank Thomas did it in 2006.
"That was the farthest ball I've seen hit here," reliever Brad Ziegler said after the A's 5-3 win over the Los Angeles Angels on Friday night. "Not many people can reach that area. I hope he can keep it up and be that rock in the middle of the lineup that we need."
Willingham's homer highlighted his three-hit day. The A's outfielder singled and doubled and is batting .450 since returning from the disabled list on July 7.
Oakland still has the fewest home runs in the American League with 51 but the power numbers look much better when Willingham is in the lineup.
"He's the guy in the lineup that can hit it out of any park, any field really," A's manager Bob Melvin said. "That's what we've been looking for, to get him back in the lineup and do stuff like that."
McCarthy (2-5) pitched into the sixth inning and matched his season high of seven strikeouts for his first win since April 10. The right-hander, who missed nearly seven weeks with a stress reaction in his right scapula, had to work out of trouble in almost every inning but held on for the win after the A's bullpen blew most of a three-run lead.
Haren allowed four runs and 10 hits as Los Angeles had a four-game winning streak snapped.
"I don't know if Dan was as sharp as we've seen him," Angels manager Mike Scioscia said. "He threw a lot of pitches early and they bunched some hits against him in that one inning. The most frustrating thing was how many chances we had with runners in scoring position. You're going to pay a price for that and we did."
Part of it was because of McCarthy, who ended his long winless drought with a solid but unspectacular outing.
McCarthy, 0-5 with a 4.14 ERA over his previous nine starts, scattered six hits and walked one.
"I'm not shy with how much I hate the win-loss stat ... but it's just nice to get us a win again," McCarthy said.
It wasn't easy.
The A's used three relievers in the sixth inning and six overall to hold off the Angels. Andrew Bailey worked the ninth for his ninth save in 11 tries.
Los Angeles, which went into the All-Star break on a 14-3 run, dropped 2 1/2 games behind Texas in the AL West.
Haren (10-6) had not lost to the A's in four career starts before this season but has dropped two straight against his former team. Oakland beat Haren on May 24.
Suzuki doubled leading off the third, was sacrificed over then scored on Weeks' single up the middle against a drawn-in infield. Two batters later, Willingham hit a 2-0 pitch into the second deck in left field to give the A's a 3-0 lead.
"I was trying to throw a cutter for a strike but I left the ball up in the zone and that's not where you want to go," Haren said. "He made me pay for it. I was not commanding the bottom of the strike zone like I have been."
Oakland made it 4-0 on Conor Jackson's RBI single in the fourth but missed a chance for more when Jackson was thrown out at home trying to score on Suzuki's second hit of the game.
Replays appeared to show Jackson's hand hitting the plate as he tumbled over catcher Jeff Mathis but umpire Dan Iassogna ruled otherwise.
McCarthy, who worked his way out of jams with runners in scoring position in each of the first three innings, lost his shutout bid in the fifth.
Russell Branyan drew a leadoff walk and took second on Mathis' infield single that started off in foul territory before hitting the edge of the grass and bouncing back fair. After McCarthy retired Mike Trout on a deep fly to center, Erick Aybar doubled to drive in Branyan.
McCarthy left after giving up a one-out single to Alberto Callaspo in the sixth then watched as Oakland's bullpen imploded.
Trout greeted Ziegler with an RBI single to make it 4-3 but Ziegler got Aybar to ground into an inning-ending double play.
Earlier in the day, the Angels placed Peter Bourjos on the 15-day disabled list and plan to keep the speedy outfielder there until July 23 because of his lingering hamstring injury. Bourjos was injured while rounding second base on an eighth-inning RBI double against Seattle on July 7.
Scioscia was forced to jumble his lineup further when cleanup hitter Vernon Wells fell ill before the game and was scratched. Bobby Abreu, scheduled to be the designated hitter, replaced Wells in left field and Branyan took over at DH.
The teams will play a doubleheader on Saturday, the first scheduled twin bill in the majors since 2003. ... Los Angeles called up OF-INF Alexi Amarista from Salt Lake (PCL) to take Bourjos' spot on the roster. Amarista joined the Angels after making the trip from Tacoma earlier Friday. ... Angels RHP Fernando Rodney (upper back strain) will pitch at least one inning against San Jose in a rehab outing on Saturday. ... The A's sent struggling rookie 1B Chris Carter back to Triple-A Sacramento and called up INF Eric Sogard. Carter started nine of Oakland's 11 games before the All-Star break but was batting only .133 with no RBIs.