Coleman (3-2) buckled down after St. Louis got to him for three early runs, finishing with four scoreless innings. The 23-year-old right-hander allowed five hits, struck out four and walked two in his seventh major league start.
"We've seem him do that time and time again," Cubs manager Mike Quade said. "I'm sure he would like to be lights out from start to finish, but we know that's not how the game is. He makes adjustments on the fly very well and he makes them himself."
Coleman, who made his major league debut in relief on Aug. 2 against Milwaukee, is 3-1 with a 3.68 ERA in his last six starts.
"I've had some rough innings since I've been up here but my teammates pick me up and score runs and make great plays," he said.
Carpenter (15-9) lasted just four innings and reliever Blake Hawksworth was hit in the face by a Fuld liner in the fifth, sending the right-hander to the hospital.
"He's getting a CT scan," Cardinals manager Tony La Russa said. "But there's going to be quite a few stitches. He never lost consciousness. There's a chance he'll need to have some dental work. We'll just have to wait and see what the scan says."
St. Louis' loss dropped the magic number for Cincinnati to clinch the NL Central title to two. The Reds lost 4-3 at San Diego later Saturday.
Albert Pujols hit an RBI double in St. Louis' two-run third, but the Cubs responded by scoring four runs with two out in the bottom half.
Ramirez singled in DeWitt and Kosuke Fukudome scored on catcher Bryan Anderson's throwing error, cutting it to 3-2. Carpenter then intentionally walked Alfonso Soriano to get to Fuld, who grounded a two-run single back up the middle.
Ramirez added another RBI single in the fourth and DeWitt tripled in a pair of runs in the fifth. Both hits also came with two out.
Carpenter allowed five runs and seven hits, dropping to 0-4 with an 8.44 ERA in his last four starts. The right-hander also has lost his last three starts against the Cubs.
"My stuff is good," he said. "My command is good, my cutter is good, my breaking ball is good. I'm throwing my changeup a little bit more, I'm getting good movement on my sinker, my velocity is better everything is there. Something's going on, I'm just not getting outs."
After striking out Soriano to start the fifth, Hawksworth was hit in the face by Fuld's comebacker near his mouth and crumpled to the field. He eventually walked off and was taken to a hospital for treatment.
Pujols went 2 for 3 and is batting .533 (8 for 15) with six RBIs in his last five games. ... Cubs broadcaster Bob Brenly took himself out of consideration to become the team's next manager. "I just didn't feel at this particular time that this was a good fit for me," Brenly said before the game. ... Cubs OF Marlon Byrd rested after being hit below the right eye with his own foul tip on Friday. Quade said Byrd suffered no serious damage. ... La Russa was ejected before the bottom of the fourth inning by home plate umpire Joe West. La Russa emerged from the dugout just as Coleman prepared to bat and appeared to argue with West. ... An announced crowd of 39,316 pushed the Cubs over 3 million for attendance for the seventh straight season. With one home date to go, the Cubs have drawn 3,024,916 fans to Wrigley Field in 2010.