The Dynamo secured its third appearance in the MLS Cup in six years with a victory in the Eastern Conference final.
Houston grabbed a 1-0 lead in the 53rd minute when Jermaine Taylor put a header to the front of net where it was met by Hainault, who redirected it past goaltender Jimmy Nielsen for the decisive goal.
Costly added an insurance tally in the 87th on a through ball from Luiz Camargo, finishing off the play with a shot off the far post.
The Dynamo won despite a quadricep injury to MLS assists leader Brad Davis in the 39th minute.
Houston now goes on to face the Los Angeles Galaxy in the Nov. 20 MLS Cup Final at the Galaxy's home field in Carson, Calif.
Los Angeles defeated Real Salt Lake 3-1 in Sunday's Western Conference final.
Man behind Doritos Locos Tacos passed away on Thanksgiving
Caroline Berg Eriksen: Soccer player's wife triggers debate with post-birth selfie