CINCINNATI -- Right-hander Mat Latos pitched seven strong innings to remain unbeaten and Jay Bruce and Devin Mesoraco homered, lifting the Cincinnati Reds to a 4-2 victory over first-place St. Louis on Saturday night at Great American Ball Park.
The Cardinals (40-22) lead the National League Central by three games over both the Reds and Pittsburgh Pirates.
Latos (6-0) allowed two runs and eight hits and lowered his career ERA to 3.02 at Great American, the lowest among pitchers with at least 10 starts there.
Derrick Robinson, batting second for the first time this season, doubled twice for Cincinnati (37-25), which ended a three-game losing streak to St. Louis.
Robinson doubled leading off the sixth and scored on Joey Votto's double to give the Reds a 3-2 lead. Cincinnati, which hadn't scored more than two runs in its past six games against the Cardinals, added a run on Mesoraco's single with the bases loaded off Seth Maness to make the score 4-2.
St. Louis starter Tyler Lyons (2-2) allowed four earned runs for the second straight game.
Latos got plenty of defensive help.
In the sixth, Shin-Soo Choo made a running catch of Yadier Molina's drive to the wall in center and Bruce made a leaping grab of David Freese's fly ball just shy of the wall in right. An inning later, Zack Cozart threw out Shane Robinson from deep short and Votto made a behind-the-back flip that Latos barehanded to retire Carpenter at first.
The Reds had the bases loaded in the sixth and seventh but failed to pad their lead.
Pete Kozma doubled with one out in the ninth against Cincinnati closer Aroldis Chapman, who hit Matt Carpenter with a pitch to bring the go-ahead run to the plate with two outs. But Carlos Beltran grounded out to third and Chapman secured his 16th save.
The Cardinals open a 1-0 lead in the second when Yadier Molina doubled leading off the inning, advanced to third on a fly ball and scored on a groundout.
But Bruce's homer tied the score 1-1 in the bottom of the inning.
In the third, Allen Craig extended his hitting streak to 12 games with an infield single, driving home Beltran from third to put the Cardinals ahead 2-1.
Lyons was efficient through four innings, throwing just 41 pitches. But Mesoraco's opposite-field home run tied the score 2-2 in the fifth.
NOTES: Freese extended his hitting streak to 18 games with a fourth-inning single and Carpenter extended his streak to 17 with a single in the first. ... Cincinnati optioned RHP Logan Ondrusek to Triple-A Louisville and recalled RHP Curtis Partch from Triple-A. Ondrusek allowed four earned runs and four hits in one inning during Friday's 9-2 loss to St. Louis. ... Robinson batted second for the first time this season and Cozart was moved to eighth to provide more speed at the top of the lineup. ... Beltran was in the starting lineup after leaving Friday's game in the sixth inning with a sore quadriceps.