Molina's eighth career regular season walk-off hit came with one out and sent Miami to its fourth straight loss.
''I'm ready for any spot but, I mean, you got to turn (up) your level in those kinds of spots, your concentration has to be there,'' Molina said.
Paul Goldschmidt reached on an error by shortstop Jazz Chisholm Jr. to start the ninth. After Matt Carpenter walked with one out, Molina singled off Marlins starter Sandy Alcantara (4-6).
''I'm throwing my best pitch, trying to get a ground ball to make a quick double play over there, but he made an adjustment,'' Alcantara said.
The Cardinals went 6-0 against Miami this year for their first season sweep over the Marlins. St. Louis won all three games at Busch Stadium in its final at-bat - Goldschmidt's solo homer in the ninth produced a 2-1 win Tuesday night.
''Stay together, stay with it, keep fighting, but also just lock in what you're doing,'' Cardinals manager Mike Shildt said. ''Just have a good at bat. Make a quality pitch, make a good play. Stay present. Be aware of the situation. Just keep playing the game that's in front of you at that moment.''
Ryan Helsley (4-4) and Andrew Miller combined for two scoreless innings of relief.
Cardinals starter Johan Oviedo is still seeking his first major league win despite pitching a career-high seven scoreless innings. The right-hander allowed six hits, struck out four, walked none and 63 of his 87 pitches were strikes.
''Just keep my mind on one pitch, that's the key for me,'' Oviedo said.
Alcantara pitched a team season-high 8 1/3 innings. He gave up six hits, struck out seven with one walk, and the one run he allowed was unearned.
Oviedo retired the first 10 batters he faced before giving up back-to-back singles to Jon Berti and Jesus Sanchez in the fourth. Goldschmidt made a strong throw home to Molina on a grounder by Jorge Alfaro to get Berti at the plate.
''Oviedo was really good today,'' Molina said. ''Every start he's getting better and better. He's gained more confidence, is attacking the zone more, the off-speed pitches - the curveball and the sliders - were very sharp.''
A throwing error and a botched fielder's choice by the Marlins defense put Alcantara into a jam in the fourth, but he got out of it by getting Edmundo Sosa to hit into a double play.
Alcantara finished at 108 pitches, 76 for strikes.
Marlins manager Don Mattingly didn't hesitate to send Alcantara back out for the ninth inning.
''I think he'd earned it all day, right,'' Mattingly said. ''Kept his pitch count down, he stayed on the attack. Yeah, we really felt like his pitch count was at a point that we knew we would have to watch it if it got too big there in the ninth, but you didn't really feel like you had somebody better out there that was going to be better than Sandy.''
Tyler O'Neill extended his on-base streak to a career-best 22 games with an infield hit in the Cardinals fourth.
Marlins: RHP Luis Madero was designated for assignment and INF Deven Marrero was selected from Triple-A Jacksonville.
Cardinals: INF Tommy Edman (right side tightness) missed his second straight game and is day-to-day. ... Sosa left the game after getting hit in the right hand in the seventh. X-rays were negative and he is day-to-day.
Marlins: Continue their six-game road trip for the first of three against the Chicago Cubs on Friday night. Neither team has announced a starting pitcher.
Cardinals: RHP John Gant (4-4, 3.86 ERA) begins a six-game road trip on Thursday night with the first of four against the Atlanta Braves, who have not announced a starter. Gant struggled in his last start, giving up a career high seven runs in four innings in a no-decision against the Cincinnati Reds on June 6.
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP-Sports
Copyright 2021 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.