The game was played in front of 20,086 frenzied fans in the first full-capacity match since March 2020.
In the 50th minute and trailing 1-0, Gadi Kinda drew a foul to set up a free kick. Gianluca Busio drove the ball from about 28 feet out, over the wall of defenders and off the side post into the goal.
With the post-goal smoke still lingering, Houston's Boniek Garcia fouled Alan Pulido in the box, conceding a penalty kick. Pulido drove it past Houston keeper Marko Maric to give Sporting KC the 2-1 lead.
Then, in the 65th minute, a 4-on-2 break set up Busio to Kinda, who pounded it past Maric.
Houston's Maximiliano Urruti scored in the final minute of stoppage time to draw within one goal.
Sporting had two point-blank shots late in the first half that were cleared by Maric. Roger Espinoza left-footed a shot from the center of the box in the 40th minute, but Maric deflected it. In the 43rd minute, Khiry Shelton's header was saved by Maric.
Houston scored in the 14th minute following a takeaway in the corner. Urruti picked it cleanly from Andreu Fontas and served it to the middle, where Matias Vera left-footed a shot from the center of the box past SKC keeper Tim Melia to the bottom right corner of the net.
The first half was eerily similar to the last match between the two clubs, to the chagrin of Sporting KC. On May 16, Houston claimed a 1-0 victory despite a second half dominated by Sporting. SKC outshot Houston 16-5, claimed a 4-1 edge in shots on goal and an 8-3 advantage in corners.
On Saturday, Sporting controlled possession 69 percent to 31 percent and owned an 11-1 edge in shots, a 3-1 edge in shots on goal and a margin of 5-0 on corners in the first 45 minutes. But Houston owned the only stat that counted: a 1-0 lead in goals.