The Cowboys' defense got its first three takeaways of the season and held Houston's top-ranked offense to 340 yards. DeMarcus Ware sacked Matt Schaub three times, and the Dallas secondary limited All-Pro receiver Andre Johnson to four catches for 64 yards.
David Buehler kicked two field goals and the Cowboys (1-2) turned in a dominant performance after starting 0-2 for the first time since 2001.
Arian Foster, the NFL's leading rusher, ran for 106 yards on 17 carries for the Texans (2-1), who were trying for their first 3-0 start.
The announced crowd was 71,456, a record for a Texans game at Reliant Stadium.