The Diamondbacks' defensive collapse saw to that, wasting a dominant effort by starter Dan Haren.
Heilman and first baseman Adam LaRoche committed throwing errors in the ninth inning as three runs scored in the Cardinals' 6-5 victory Monday night.
Heilman rushed a wild, off-balance toss to third on pinch-hitter Adam Wainwright's sacrifice bunt to allow one run and LaRoche threw in the dirt to the plate attempting to prevent the tying run from scoring on Skip Schumaker's RBI groundout against a drawn-in infield, allowing two runs.
"I felt like I threw the ball where I wanted to, with the exception of the ball to third," Heilman said. "I think I had a little more time than I thought I did at the moment.
"It doesn't do me much good now, it doesn't do us much good now."
Wainwright scored the winning run from second with a triumphant slide.
"It was very entertaining, I guess," said Cardinals manager Tony La Russa, who was ejected for arguing balls and strikes on Yadier Molina's at-bat to open the ninth inning. "But it was just a weird night. I don't even think the moon's full, is it?"
Must have seemed like it to the Diamondbacks.
"We got exactly what we wanted right there," LaRoche said. "I couldn't find it in my glove and by the time I did it was just rushed. Terrible grip and just buried it right in the ground. No excuse."
Haren said La Russa's ejection was simply a tactic to throw him off.
"Tony's good at delaying like that," Haren said. "I've seen it before and I knew exactly what he was doing. He'll probably do it again because it looks like it works."
Haren hit his second career homer to straightaway center off Carpenter and is batting .435 with seven RBIs.
Carpenter had a testy exchange with La Russa in the dugout after the seventh, presumably after the pitcher was told he was done for the night. Carpenter wriggled out of several jams before giving up a two-run, game-tying homer to LaRoche with two outs in the sixth. He has allowed 12 homers this season after giving up only seven all last year.
Carpenter had a big welt on his forearm after taking Kelly Johnson's line drive off his right forearm to open the game.
The Cardinals opened the eighth with three straight singles and Felipe Lopez's hit cut the deficit to 5-3 with Albert Pujols and Matt Holliday coming up. After a visit from pitching coach Mel Stottlemyre, Haren struck out both of the Cardinals' top run producers, then got Colby Rasmus on a routine fly out.
Reynolds' 18th homer glanced off the top of right fielder Randy Winn's glove at the fence just in front of the Cardinals' bullpen. Reynolds, who has been working with coaches to eliminate a loopy swing, had two hits and a walk after entering the game a .132 hitter in June.
The Diamondbacks were dangerous all game with two outs, getting six of their nine hits, including both homers, and adding five walks and a hit batter.
Documentary filmmaker Ken Burns threw out the first pitch. ... Edwin Jackson is on track to start Friday with two extra days' rest coming off his no-hitter, and Diamondbacks manager A.J. Hinch said he'll announce a starter for Wednesday's series finale on Tuesday. ... Cardinals RHP Brad Penny (back) threw his first bullpen session Monday. RHP Kyle Lohse (forearm) played catch for the first time since surgery in late May. "To finally get to officially out there and toss a baseball, it's a good feeling," he said. ... Cardinals RF Ryan Ludwick (calf) missed his fifth start in six games and 3B David Freese (ankle) was not in the lineup. ... Cardinals RHP Blake Hawksworth, who emerged from the bullpen and earned his first victory on Saturday with five innings against the Royals, will start Thursday against the Brewers. ... Molina, who entered the game in a 1-for-32 slump, had two singles and a walk.