MLS: Houston Dynamo 0 Sporting Kansas City 2
Soony Saad and Dominic Dwyer scored either side of half-time as Sporting survived an early injury to captain Paulo Nagamura and Toni Dovale's 21st-minute red card to claim their first win in six matches.
Sporting entered the match without Graham Zusi and Matt Besler, who are part of the United States' squad for the FIFA World Cup, and the reigning MLS champions lost Nagamura in the third minute to a concussion, before Dovale was sent off in the 21st minute.
The Spanish winger was shown a red card for elbowing Houston's Alex Lopez, who was given a yellow card for his involvement in the scuffle between the two players.
After surviving a barrage of shots from Dynamo, Sporting took the lead just before half-time in Houston, with Benny Feilhaber stealing possession for the visitors before he was tripped, only for Saad to strike the loose ball into the net.
Dwyer could have made it 2-0 in the first minute of the second half at BBVA Compass Stadium but Houston goalkeeper Tyler Deric came out of his box to deny the striker, who was a constant threat to the hosts' defence after the break.
In the 68th minute, Dwyer's header from a corner struck Houston defender AJ Cochrane on the shoulder but the referee pointed to the spot for handball.
Dwyer took the responsibility from 11 metres and calmly slotted the penalty for his 11th goal of the season.
A fast break in the 81st minute gave Dwyer his next goal-scoring opportunity in Houston but the 23-year-old Englishman shot straight at Deric, although it meant little, as Kansas City held on for victory.
Sporting moved to 22 points to rise to second in the Eastern Conference, one point behind leaders New England Revolution, although Kansas City have played two extra games.
Dynamo suffered their fourth consecutive defeat to stay fourth in the East on 17 points, and extended their goal drought to 389 minutes.