Columbus, which came into the match riding a five-match winless run, had the better of the chances in the early going, despite sitting deep and picking its moments to get forward.
The visitors' best chance of the first half came on the half-hour mark when a corner kick from Jairo Arrieta was deflected on goal, but Houston goalkeeper Tally Hall kept it out with a diving stop.
Four minutes later, Arrieta had another clean strike on goal from just outside the box, but the ball just missed the inside of the far post as the clubs went into the intermission scoreless.
The home side grabbed the game's only goal in the 50th minute when Brad Davis whipped a left-footed free kick into the penalty area and the ball deflected off the back of Bruin and wound up nestled into the bottom right corner.
The Crew failed to generate many opportunities in the second half, but had one final excellent chance late on as substitute Justin Meram made a 50-yard run down the center of the park into the heart of the Houston defense, but the strike smacked the left post and was gathered by Hall.
The result sees the Dynamo improve to 14 points from 10 matches, while the Crew remain on 12 points from nine games.