Uggla singled in the go-ahead run in the 11th inning after Jacobs tied it in the ninth with his 29th homer, leading the Florida Marlins to a 4-1 victory Friday night.
Uggla and Jacobs combined to send Florida to consecutive victories for the first time since July 30-31 and hand the Cardinals their sixth loss in seven games.
"I can't remember the last time we did that," Uggla said. "We want to see if we can get something rolling, because we can't afford to let anything slip away at this point."
The Cardinals blew their major league-leading 30th save chance on Jacobs' homer off Chris Perez with one out in the ninth. The ball landed in the first row in the center-field bleachers.
"I hit that ball really good, and it barely got out," Jacobs said. "I had just swung through a pitch and said 'Man, I've got to dial it up a little bit."
Uggla's hit came off an 0-2 fastball from Jason Motte, whose fastball has been clocked in the upper 90s.
"He's got a big-time arm," Uggla said. "I saw the first two and said 'If he throws another one near the zone, I'm going to take a hack at it.' Luckily it found a hole."
Lopez played right for the first time after manager Tony La Russa botched a double-switch in the 10th. La Russa wanted to put Lopez in left field for sore-legged Rick Ankiel, but told plate umpire Chuck Meriwether that reliever Ryan Franklin would bat fifth, which is right fielder Ryan Ludwick's spot, and couldn't correct it after Franklin took to the mound. Ankiel re-emerged from the dugout before the inning started.
The 22-year-old Perez, who replaced Jason Isringhausen as the closer in early August, has blown save opportunities in his last two appearances after converting six in a row. He took the loss Wednesday in a 4-3 setback at Arizona that concluded a 1-5 trip, and said he thought a lot about it on the plane back to St. Louis but got over it on a day off Thursday.
"It's a tough one, obviously," Perez said. "We're trying to stay in this thing and the last two times I've gone out there I've had the lead and when I've left we haven't."
Florida's 11th-inning rally was fueled by a little luck. Hanley Ramirez hit a leadoff single against Ryan Franklin (5-6) and John Baker ended up with a hit on a bunt that stayed just inside the line while rolling almost all the way to third, putting two men on. The Cardinals missed a shot at a double play when shortstop Cesar Izturis bobbled Jorge Cantu's grounder, settling for a forceout.
"This guy is playing Gold Glove shortstop," La Russa said. "It's the old saying that when it rains it pours. We missed a couple of outs there."
The Cardinals are 6-11 in extra innings, with the loss total leading the majors.
Braden Looper threw four-hit ball into the eighth, Albert Pujols doubled twice and Adam Kennedy had an RBI single in the seventh for St. Louis. Kennedy has 29 RBIs on the year, but is 3-for-5 with three RBIs against Florida.
Looper bounced back after he matched career highs in runs allowed (eight) and hits (11) while allowing three home runs in a loss at Houston in his previous outing. He struck out six, one off his season best, in 7 1-3 innings with no walks.
Marlins starter Ricky Nolasco allowed only three hits and one runner into scoring position, inducing 10 easy flyball outs, until the seventh. Pujols doubled off the base of the left-field wall, making him 7-for-10 against Nolasco, and scored without a play on Kennedy's hit.
Hermida is 0-for-15 against Cardinals pitching. ... The Florida bullpen needed only 32 pitches to get through four innings. Rhodes has not allowed a run in 15 appearances since arriving on the trade deadline from Seattle, covering 9 1-3 innings.