Bradley Wright-Phillips scored the only goal of the game in the 55th minute at Toyota Park, where Dax McCarty was robbed of possession and Daniel Royer reacted sharply to slip in the former Manchester City player for a simple finish past Richard Sanchez.
Gyasi Zardes' opportunistic 91st-minute goal saw Columbus Crew snatch a 1-0 win at home to Houston Dynamo, which has now suffered four successive defeats and will rue its defensive lapse late in the contest at Mapfre Stadium.
Philadelphia Union needed a penalty from Fabrice Picault in the 76th minute to earn a 3-2 victory at New England, Andrew Farrell and Wilfried Zahibo having cancelled out Jack Elliot's early brace for the visitors.
In the Western Conference, Gerso Fernandes and Ilie scored as Sporting KC won 2-0 at out-of-form Los Angeles FC to keep pace with first-placed Dallas.
Kei Kamara and Cristian Techera netted in the first half for Vancouver Whitecaps, which secured a 2-1 victory away to Portland, ending the third-placed Timbers' 15-match unbeaten run.
Francisco Calvo received a second yellow card late on, but that did not prevent Minnesota United from earning an entertaining 2-2 draw at LA Galaxy, the host twice giving up the lead to drop points for the second match in succession.
Bismark Adjei-Boateng's late winner saw Colorado Rapids get the better of 10-man San Jose Earthquakes in a battle between the Western Conference's bottom two.
Jukka Raitala's equaliser allowed Montreal Impact to earn a point in a 1-1 draw at Real Salt Lake.