HOUSTON -- Claudio Vargas flirted with trouble all day. Luckily for him, the Houston Astros' offense was back to its usual futility.
Vargas escaped bases-loaded jams in three straight innings and Geoff Jenkins homered to lead the Milwaukee Brewers to a 3-1 victory.
Tony Graffanino and J.J. Hardy also had run-scoring hits for the Brewers, who won a three-game series in Houston for the first time since 1997, when the Astros still played in the Astrodome.
Vargas (2-0) gave up four hits and five walks in five shutout innings, toughening up whenever the Astros threatened to score.
"Sometimes, you focus a little bit more when we get into that situation," Vargas said. "That's the place where you have to make the pitches and get out of it for the club."
Francisco Cordero shut out Houston in the ninth to improve to 10-for-10 in save chances this season.
The Brewers have won eight of their last 11 and are 13-0 when they lead after seven innings. They've reached 15 victories a month ahead of when they did last season.
"I like the way we're playing," Jenkins said. "There's definitely another level we can play to. We're happy with the way we've played, but we've got to keep getting better."
Woody Williams (0-4) allowed five hits and walked two, losing for the second time in two starts as an Astro in his hometown. He got no help from Houston's offense one day after the Astros snapped a seven-game skid with a 10-1 victory.
The Astros loaded the bases in the third, fourth and fifth and came away with nothing.
Vargas struck out Carlos Lee on three pitches to end the third, then fanned Williams and got Craig Biggio to ground out in the fourth.
In the fifth, Morgan Ensberg walked, Lee singled and Luke Scott reached on a throwing error. Rookie Hunter Pence, called up on Friday to spark the Astros' offense, then struck out and Adam Everett flew out as Vargas escaped again.
"It seems like he was in a jam every inning," Milwaukee manager Ned Yost said. "But he kept making pitches when he needed to and got out of it."
Vargas has retired the last eight batters he's faced with the bases loaded. He struck out the side with the bases loaded in Pittsburgh on April 18, and the Brewers won 7-3.
"You can't do that every time you go out," Vargas said. "Some time, they're going to get a hit."
Carlos Villanueva replaced Vargas in the sixth and pinch-hitter Chris Burke doubled off the left-field scoreboard with one out. Biggio then struck out and Lance Berkman flew out around Ensberg's second walk, another missed opportunity.
Houston stranded 13 runners in the first six innings.
"They had a ton of opportunities," Jenkins said. "It was kind of a lucky victory for us. We were on eggshells out there."
Burke was benched to make room for Pence, who batted .341 in the minors. Houston manager Phil Garner doesn't anticipate any more roster moves to spur more run production.
"I do believe our offense will come around," Garner said. "I think we've got the personnel that can get it done. Obviously, it would be a good time to get that going."
Pinch-hitter Mike Lamb homered against Villanueva in the eighth. Derrick Turnbow relieved Villanueva and retired Biggio and Ensberg to finish the inning.
Cordero pitched the ninth and has not allowed a run in 12 appearances this season. He also earned a save in the Brewers' 4-1 win in the series opener.
"I'm never going to give in to anybody," he said. "They've got to beat me with my best stuff. I believe in every pitch I have."
Jenkins gave Milwaukee a 1-0 lead in the second, hammering the first pitch he saw from Williams into the left-field seats. It was Jenkins' fourth home run of the season and the sixth given up by Williams in his last four starts.
Craig Counsell led off the third inning with a single to right and eventually scored on Graffanino's two-out single through the same gap between first and second. Hardy then ripped a double to left-center and Graffanino scored easily to make it 3-0.
The Astros have stranded 54 runners in their last five games. ... Milwaukee's 15 wins in April are the third-most in franchise history. ... The Brewers open a 10-game homestand against St. Louis on Monday.