The umpires waited out a long delay in a contest vital to the playoff picture before it became apparent the conditions would not soon improve.
Cleveland started the contest just a half game behind Tampa Bay and Texas in the race for the two wild card berths in the American League.
A fielding error by Houston third baseman Brandon Laird in the third inning allowed Asdrubal Cabrera to reach base and Cleveland took advantage of that miscue to produce a run on a fielder's choice grounder by Mike Aviles.
Those costly mistakes gave the win to Zach McAllister (9-9), who allowed a run on four hits in five innings. Bryan Shaw struck out three while working the final 1 1/3 innings and was credited with his first save.
The hard-luck loss went to Brett Oberholzer (4-4), who went the distance in the rain-shortened affair while giving up four hits.
Senate Democrats to pull all-nighter on climate change
Susan Sarandon 'very excited' about daughter's pregnancy