BALTIMORE -- The battery of Lopez & Lopez provided just the spark the Baltimore Orioles needed to end a five-game losing streak.
Rodrigo Lopez (13-7) struck out five, walked one and worked out of several jams before leaving after 112 pitches. The right-hander is 5-1 with a 1.70 ERA in seven career games against the Angels.
"I'm very happy and very proud about tonight's game," he said. "Javy and I talked a little bit before the game, and we made our plan work."
Javy Lopez provided all the offense his batterymate needed, hitting a two-run homer in the fourth as part of a 3-for-3 performance. He also did a fine job behind the plate.
"Javy caught a great game, blocked some balls at some key times," Orioles interim manager Sam Perlozzo said. "He's playing like the player we always knew he was."
Rodrigo Lopez outpitched Los Angeles starter John Lackey, who gave up nine hits in his first complete game of the season. Lackey (10-5) was 4-0 in seven starts since July 9.
Lackey extended his run of innings without yielding a home run to 62, the third-longest streak in the majors this season, before Javy Lopez connected.
"Really, the one pitch he tried to force was the ball to Lopez, and he hit it out of the park," Angels manager Mike Scioscia said. "But outside of that, you couldn't ask for much more than what John did."
After Rodrigo Lopez left, Tim Byrdak gave up two singles in the eighth before Todd Williams got Bengie Molina to hit into an inning-ending double play.
B.J. Ryan worked the ninth for his 28th save.
After the game, Perlozzo held a closed-door meeting in which he told the players to stop pressing and start winning.
"I told them to relax because they were making me nervous," Perlozzo said. "We can relax. We're good. We'll be OK."
Chone Figgins and Vladimir Guerrero each had two hits for the Angels, whose lead in the AL West shrunk to 2½ games over Oakland, which beat Detroit 11-1 on Thursday. The defeat also ended Los Angeles' five-game road winning streak.
The Angels stranded 10 and went 1-for-10 with runners in scoring position.
"We certainly set the table, but we couldn't get that hit with guys in scoring position," Scioscia said. "(Rodrigo Lopez) made some pitches to put some guys away that were on the money, and we just couldn't put pressure on him. We just couldn't get that one hit to kind of get things going."
After Baltimore ended the first two innings by hitting into double plays, the Angels put runners on second and third with two outs in the third before Rodrigo Lopez struck out Orlando Cabrera.
Darin Erstad hit a leadoff single in the Los Angeles fourth and reached third with two outs, but Rodrigo Lopez quelled the threat by retiring Casey Kotchman on a grounder.
In the bottom half, Miguel Tejada doubled with one out and Javy Lopez sent a 1-2 pitch into the left-field seats, his 12th home run of the season and second in three games.
Los Angeles again threatened in the fifth, loading the bases with one out before Rodrigo Lopez struck out Erstad and Guerrero.
"That's another stamp that says how much he competes," Perlozzo said. "I really feel good when Rodrigo is out there in situations like that. He doesn't give in."
- Erstad, who extended his hitting streak to 12 games, has reached base by hit or walk in 25 straight games, the longest current streak in the AL.
- The Angels won the season series 4-2.
- Baltimore's Rafael Palmeiro went 0-for-4 and is 2-for-15 since returning from a 10-day suspension for using steroids.
- It was only the third time in 12 games that Baltimore hit a home run.
- Sammy Sosa went 0-for-3 for Baltimore and drew boos from the crowd of 26,832. He has gone 13 straight games without an RBI, his longest drought since a 23-game run in 1992.