Happ (7-9) allowed only one runner as far as third base, scattering four hits over 6 1/3 innings. The left-hander issued one walk and struck out four.
Fernando Rodriguez and Wilton Lopez teamed up for 1 2/3 scoreless relief frames and Brett Myers racked up his 19th save in the opener of a four-game series.
Scott Moore hit a pair of sacrifice flies to provide Houston's offense.
Kip Wells (1-3) absorbed the loss for San Diego, surrendering five walks and three hits over 4 1/3 innings and allowing both Houston runs.