A brace for Brad Davis in the first half was not enough to see Houston to a win, as Toronto stormed back to claim three points.
Davis was twice set up by Giles Barnes, the first in the 13th minute and the second on the half-hour mark, as Houston stormed out to a 2-0 lead in the first half.
But the Dynamo's lead wouldn't even last to the break.
MORE: Beautiful people in Brazil | USA MVP rankings
Jonathan Osorio punished a terrible mistake from Houston goalkeeper Tally Hall in the 39th minute to cut the lead in half, and Dominic Oduro blasted home a rebound in first-half stoppage time to put the teams back on level terms.
Jermain Defoe grabbed the winner for TFC in the 63rd, rounding a defender and slotting home with his left foot, and scored his 10th of the year late to put some shine on the scoreline.
The result leaves Houston winless in its last seven matches, while TFC has three wins in its last six matches and has 24 points from just 15 matches.