Oscar Taveras followed with a single -- part of a 4-for-5 day -- before pinch-hitter Adam Melker loaded the bases with a bloop single into left. Adron Chambers drove in Adams with a sacrifice fly for the decisive run.
The Twins took a lead in the seventh, which Trevor Plouffe led off with a single before Eduardo Escobar came through with a double. Cardinals right-hander Joe Kelly then allowed Nathan Hanson, pinch-running for Plouffe, to score on a wild pitch before Darin Mastroianni drove in Escobar with a sacrifice fly.
Two of the Twins' runs came via wild pitches, as Cardinals right-hander Shelby Miller threw one in the dirt in the first inning, sending Jamey Carroll home and tying the score at 1.
Miller, competing with Kelly for the final spot in the Cardinals' rotation, allowed runners to reach base in all but one of his innings before exiting with a man on second and one out in the fifth.
He limited the damage to Carroll's run, though, scattering six hits and two walks over 4 1/3 innings. Kelly allowed two runs in two innings on two hits and a walk.
The Cardinals got on the board first with a run in the opening frame against Twins right-hander Mike Pelfrey. Shane Robinson reached on a single before scoring on a two-out double from Adams.
But it was the lone blemish for Pelfrey, who turned in his best and longest outing of the spring. Pelfrey, who had Tommy John surgery on May 1, gave up one run on five hits and a walk over five innings. He also struck out four.
Up next: Right-hander Adam Wainwright is scheduled to take the mound for the Cardinals on Tuesday in 1:10 p.m. ET start against the Mets in a matchup that will be available live on MLB.TV. Carlos Beltran is also scheduled to play the field, testing his mobility and defense on a broken toe.
Rhett Bollinger is a reporter for MLB.com. Read his blog, Bollinger Beat, and follow him on Twitter @RhettBollinger. This story was not subject to the approval of Major League Baseball or its clubs.