The Reds survived a marathon to stay 2 1/2 games behind St. Louis for first place in the National League Central. They moved within a half game of Pittsburgh for the league's first wild card spot and jumped 5 1/2 games in front of Washington for the second wild card position.
Houston rallied to tie the game in the sixth on RBI doubles by L.J. Hoes and Carlos Corporan and it remained a 4-4 contest until the Reds finally broke through in the 13th.
Cincinnati loaded the bases on three walks issued by Jorge De Leon, one of them intentional, before Bruce doubled to deep center.
A walk, a wild pitch and two ground outs netted Houston a run in the bottom of the inning and the Astros then put runners on first and second with two out. Aroldis Chapman finally struck out Chris Carter to end the game and record his 37th save.
That made a winner out of Alfredo Simon (6-4), who gave up four hits in three innings of relief but managed to hold the Astros scoreless.
De Leon (0-1) recorded his first decision in eight major league appearances.