Trailing 4-2 entering their final at-bat, the Cardinals stunned Miami with three runs to claim the rubber match of a three-game series at Busch Stadium.
After David Descalso walked to load the bases, Furcal ripped a pitch down the left-field line, scoring Carpenter to tie it up.
Freese followed close behind with the game-winning run, beating a tag at the plate by Miami catcher John Buck.
Mitchell Boggs (2-1) got the final out to end a Marlins rally in the top ninth, earning the victory for St. Louis.
Austin Kearns clubbed a three-run homer for the Marlins.