Lohse (15-3) went seven scoreless innings, allowing four hits and striking out five, and also delivering an RBI double in the fifth inning.
The win put St. Louis 1 1/2 games ahead of the Los Angeles Dodgers in the sprint for the final wild card berth in the upcoming playoffs. Los Angeles was rained out in Washington Tuesday.
Jon Jay drove in two runs in the victory, including an RBI double that scored Lohse in the fifth. Jason Motte picked up the save.
Brett Wallace drove in the only Houston run in the eighth inning with an RBI single that averted the shutout. Fernando Abad (0-5) absorbed his fifth consecutive loss after allowing three runs on six hit and fanning six in his five-inning start.