Jose Altuve figured prominently in the game's outcome, homering in the bottom of the first inning to put Houston in front, but his sixth inning error opened up the floodgates for Tampa Bay, who took full advantage by scoring five runs.
Ryan Yarborough was the winning pitcher while Jose Urquidy took the loss. Diego Castillo picked up his second save of the series.
Opportunistic Rays pounce after Altuve error to move to within a game of World Series
Yarborough struck out George Springer to lead off the game, but he yielded a one-out home run to Altuve, who swung at a 1-1 pitch around his head, parking it over the left-field fence to give the Astros a 1-0 lead.
Urquidy ran into trouble in the top of the first after singles by Joey Wendle and Manuel Margot and a walk to Willy Adames. With the bases loaded and two outs, the Houston right-hander struck out Michael Perez.
Houston had a chance to add to their lead in the bottom of the second with runners on the corners and two outs, but Yarborough struck out catcher Dustin Garneau.
Tampa Bay nearly tied the game in the top of the third after Randy Arozarena doubled with one out and was moved over to third by Brandon Lowe, but Yandy Diaz lined out to Kyle Tucker to end the inning.
Yarborough ran into trouble in the bottom half of the inning, walking Altuve and hitting Alex Bregman before Kiermaier made his second sensational catch to rob Carlos Correa and keep the score at 1-0.
The top of the sixth proved to be decisive as Arozarena led off with a single. Lowe hit what looked to be a tailor-made double-play ball, but Altuve made a wild throw and everybody was safe.
Urquidy was relieved by Enoli Paredes and he surrendered a single to Diaz to load the bases and Wendle drove in Arozarena and Lowe with a single to put the Rays ahead 2-1.
After Margot bunted the runners over to second and third, Paredes hit Kiermaier and Adames to force home a third run. Brooks Raley was the third Astros pitcher of the inning and he gave up a two-run double to pinch hitter Hunter Renfroe.
Michael Brantley homered to lead off the bottom of the fifth, chasing Yarborough from the game. Peter Fairbanks retired the next three hitters and was relieved by John Curtiss in the seventh.
Josh Reddick singled and after Martin Maldonado struck out, Springer hit a ball into shallow right field that Renfroe made a brilliant diving catch on.
Curtiss gave up singles to Altuve and Brantley to begin the bottom of the eighth to bring up Bregman, who struck out against Ryan Thompson. An infield single by Correa loaded the bases, prompting Tampa Bay manager Kevin Cash to call on Aaron Loup.
Tucker hit another shallow fly to right that again was hauled in by Renfroe and he got out of the jam by getting Yuli Gurriel to ground out. After Tampa Bay didn't score in the top of the ninth, Castillo came on in the bottom of the ninth.
After striking out Reddick, the Rays closer walked pinch-hitter Abraham Toro and Springer to bring up Altuve, who represented the tying run. Castillo got the Houston shortstop on a check-swing third strike for the second out.
Brantley was the Astros' last chance and he flew out to end the game and put Tampa Bay on the verge of their second American League pennant.
Game 4 is Wednesday night with first pitch scheduled for 8:40pm. Tyler Glasnow will try and send Tampa Bay to the World Series while Zack Greinke aims to keep Houston's season alive.