ST. LOUIS -- It's been clear for a while that last year's World Series champions would be heading home in October. Now it's official.
"It was academic," Cardinals manager Tony La Russa said. "The thing that's more irritating is just the current stretch of having a tough time winning a game.
"We're right there, we just can't punch through. An at-bat here, a pitch there, it's really been tough."
Towles, who set a franchise record on Thursday with eight RBI, also made a key defensive play behind the plate for the Astros, who are 7-12 in September but have won three in a row.
The Cardinals (71-82) are assured of their first losing season since 1999. Entering this season, they were the lone NL team without a losing record in this decade.
That was no consolation to the manager.
"To have that run that many years, I don't feel better because this is the first losing year," La Russa said. "I feel worse that this is a losing year."
The Cardinals didn't go quietly.
They loaded the bases with two outs in the ninth against rookie Stephen Randolph. Brad Lidge relieved and faced pinch-hitter Albert Pujols, who hit a memorable game-winning home run off him in the 2005 NLCS. Lidge walked him on four pitches, but then got Yadier Molina on a groundout for his 16th save in 22 chances.
Pujols has missed three starts with a strained left calf muscle.
"We had a really good opportunity in the last inning with Kirk Gibson coming out from the tunnel," teammate Scott Spiezio said. "It was pretty cool, but they walked him. We gave it our best shot."
Lidge said the game plan was to get ahead of Pujols with sliders.
"Of course I'm not trying to walk him, I really am trying to throw a strike," Lidge said. "At the same time you've got to be smart when you fall behind to a guy like that in a situation like that."
Lance Berkman hit a two-run homer in a three-run first for Houston and Brandon Backe won his second straight start.
The Cardinals were down 3-2 and had runners on first and third with one out in the seventh when Towles prevented the tying run from scoring. He leaped out of his crouch to snare a high delivery from Dennis Sarfates on a 2-2 pitch to Rick Ankiel. Ankiel struck out on the next pitch and Sarfates fanned Ryan Ludwick to end the threat.
"He had to skywalk a little bit," Cooper said. "J.R. has really played well."
Towles, who had been 0-for-2 with a walk, gave the Astros a 5-2 lead with his two-run double off Ryan Franklin in a three-run eighth.
Backe (2-1) worked six innings and allowed two runs and six hits. It was the fourth start of the season for the 29-year-old right-hander, who was coming off elbow surgery last September.
Joel Pineiro (5-4) gave up three runs and four hits in the first inning then allowed four hits over the rest of his 5 2/3 innings. Unlike his last outing when the Cardinals rallied for a 4-3 victory over the Cubs, a lineup minus Pujols, Jim Edmonds, Scott Rolen, Chris Duncan and Juan Encarnacion wasn't able to overcome the early deficit.
Edmonds missed his fourth straight start with a groin injury and grounded out as a pinch-hitter with runners on first and third to end the eighth.
Chris Burke doubled with one out in the first ahead of Berkman's 31st homer to straightaway center. Carlos Lee followed with a double and scored on Ty Wigginton's two-out single for a 3-0 lead.
The Cardinals had three hits and a sacrifice fly by Spiezio in the bottom of the first. They cut the gap to one in the fifth on two hits and Ankiel's run-scoring groundout -- his second RBI in 16 games since reports of his involvement with human growth hormone in 2004.
Josh Anderson had two hits, including an RBI infield hit to make it 6-2 in the eighth, and is batting .474 (18-for-38) during an eight-game hitting streak. ... Spiezio has started eight straight games since being activated from the restricted list following treatment for substance abuse. He is batting .143 (4-for-28) with three RBI. ... Backe singled in the sixth and is 3-for-8 for the season. ... The Cardinals' Russ Springer struck out one in a perfect seventh and hasn't allowed a run in a career-best 17 2/3 innings -- a team high for the season. ... Home plate umpire Rick Reed left the game before the bottom of the sixth, suffering from left knee discomfort. Second base umpire Alfonzo Marquez went behind the plate.