The loss dropped Milwaukee to 4-6 against St. Louis and 23-23 against National League Central opponents this season.
Milwaukee starter Randy Wolf had little trouble with the Cardinals through the first three innings, allowing two singles and no runners past first base. But St. Louis sent nine batters to the plate and collected four hits in the fourth to take a 4-3 lead.
Joe Kelly's two-out single on the first pitch from Wolf scored Daniel Descalso from second for the go-ahead run.
"I couldn't stop the bleeding," Wolf said. "They got hit after hit, and when you get to the pitcher's spot, you have to get him out. He gets a big hit there. Unfortunately that was really the difference in the game."
"He threw me an eephus curveball," Kelly said. "I don't know what it was. It fooled me. Right when I slapped it, I was like, 'Alright, I can beat this out.'"
The Brewers scored three times in the second off Kelly -- all with two outs. Wolf singled to right field with the bases loaded to put Milwaukee ahead by two, and Norichika Aoki singled to left to make it 3-0.
Wolf had just two RBIs in 27 plate appearances this season, and had his first multi-RBI game since June 9, 2010. He entered the game a career .129 hitter with the bases loaded.
Although they tagged Kelly for three runs, Milwaukee had a handful of opportunities to extend that lead even further against the young right-hander. The Brewers led off both the third and fourth with hits, but couldn't drive the run in.
"We had [Kelly] more than once, but you're always one hit away or one pitch away," said first baseman Corey Hart, who finished 1-for-4 with a walk. "That's kind of been the case this year. He battled and got out of it, so tip your hat to him."
Cesar Izturis led off the fourth with a double, but was cut down at third on a sacrifice bunt by Wolf. Wolf was then caught stealing by Yadier Molina on a ball that, to Wolf's surprise, Molina blocked. And what could have been a big offensive inning was just that.
"Any time you leave guys there when you have opportunities to drive them in, that pitcher gains some confidence," Roenicke said. "After those three innings, I thought he threw the ball a lot better. But we let him off the hook."
Wolf went 5 1/3 innings, allowing five runs on nine hits. He gave up nine hits and three runs against St. Louis in his first outing of the season, and fell to 1-2 against the Cardinals this year.
A pair of defensive miscues by Milwaukee in the sixth padded St. Louis' lead. Molina led off the inning with a single, went to second Descalso's sacrifice bunt, stole third and scored easily when Martin Maldonado's throw sailed into left field.
Rafael Furcal hit a chopper to the right side with two down off reliever Jim Henderson that slipped under Hart's glove and past Rickie Weeks, scoring Shane Robinson from second.
St. Louis scored three more times in the eighth, capitalizing on a pair of throwing errors by Maldonado. The 25-year-old rookie backstop, who entered the game with three errors in 50 games this season, set a career-high with three on Friday.
"We let them run away from us is what we did," Roenicke said. "Instead of making the plays, keeping it close, we let them have extra opportunities. With a great offense you can't give them any extra outs. When you give them extra outs, the good offenses always come through with runs."
The errors aside, Milwaukee left 10 runners on base and was just 2-for-13 with runners in scoring position. Despite sweeping Houston heading into the St. Louis series, the Brewers have now lost 10 of their last 14 games.
In a stretch like that, you can't cheat yourself out of those evasive breaks.
"The way things are going for us we need to play well in every aspect ... hitting, defense, pitching," Hart said. "Defense has been one of our stronger suits lately, but some days you have these games and good teams capitalize. Every time we made a mistake they were right there to score."