St. Louis starter Luke Weaver (3-5) lost his third consecutive start, allowing four runs on five hits and two walks with three strikeouts in four innings.
The Brewers were shut out 5-0 by the Mets on Thursday. Since then, they've scored 37 runs in four games, all victories.
Milwaukee broke open the game in the seventh inning. With two outs and Yelich on second, the Cardinals intentionally walked Braun to face Villar. The second baseman hit the second pitch from Brent Cecil into the Milwaukee bullpen for an 8-3 lead.
Yelich hit his sixth homer, singled, stole two bases and scored twice.
Braun, dropped to fifth from his customary third spot in the lineup, went 3 for 3 with a double, two singles and an intentional walk while scoring three times. It was the first time Braun batted lower than fourth in the lineup since Sept. 23, 2014 at Cincinnati, when he was batting fifth.
Manager Craig Counsell said before the game he dropped Braun in the lineup due to the hot hitting of Jesus Aguilar, who hit third after coming into the game batting .325 with nine home runs and 30 RBI.
Yairo Munoz hit his first major-league homer in the fifth, a two-run shot, and Matt Carpenter hit his sixth, a solo shot, later in the inning to pull the Cardinals within 4-3.
Cardinals: OF Dexter Fowler was not in the starting lineup for the second consecutive game after being hit in the right knee with a pitch from Pittsburgh's Trevor Williams. RHP Alex Reyes, who struck out 44 in 23 innings while allowing no runs and seven hits in four minor-league rehab starts, will make his first start since 2016 on Wednesday in Milwaukee. Reyes underwent Tommy John surgery in February 2017.
Brewers: Braun had been out of the lineup in two of the previous three games for rest after returning Thursday following a 10-day stint on the disabled list for back tightness.
Cardinals: RHP Michael Wacha (5-1, 2.88 ERA) will be on the mound in the middle game of the series. He has held opponents to two runs or less in each of his last seven starts.
Brewers: RHP Zach Davies (2-4, 4.74) will make his second start since coming off the disabled list Thursday. He was the losing pitcher in the Cardinals' 8-4 win on April 2 at Miller Park.