Western Conference leaders Real Salt Lake threw away an early two-goal lead as they were beaten 3-2 at home by Los Angeles in Major League Soccer.
The hosts were 2-0 up with little more than a quarter of the game gone, thanks to goals from Kyle Beckerman and Alvaro Saborio, but Landon Donovan crucially pulled a goal back before the half-hour to give the Galaxy hope.
Mike Magee equalised five minutes after half-time and Donovan struck again in the 68th minute to earn his side only their fifth win of the season.
Salt Lake's slip allowed San Jose to close to within two points thanks to a 2-1 win away to Colorado.
They left it late, though, after falling behind to Brian Mullan's 18th-minute goal. Substitute Alan Gordon equalised in the 83rd minute before Chris Wondolowski's 90th-minute penalty sealed victory.
There was also a crucial last-minute goal in Houston, where Will Bruin earned the Dynamo a 3-3 draw with Toronto FC.
Toronto led 3-1 at half-time, Danny Koevermans scoring twice after Dynamo defender Bobby Boswell had cancelled out Jeremy Hall's opener, but Bruin pulled one back in the 73rd minute before netting the late equaliser.
Juan Pablo Angel stepped off the bench to earn Chivas USA a 2-1 win over the Montreal Impact.
Alejandro Moreno's opener was cancelled out by Felipe Martins, but Angel was introduced in the 78th minute and scored five minutes later to secure victory.
The Seattle Sounders drew 1-1 with Kansas City despite the last-minute dismissal of Alvaro Fernandez, who was shown a straight red card having only been introduced as a substitute in the 81st minute.
Jacob Peterson put Kansas ahead in the eighth minute only for Patrick Ianni to equalise seven minutes later.
Heath Pearce's 86th-minute goal earned the New York Red Bulls a 1-1 draw against the Vancouver Whitecaps, who had taken the lead 11 minutes earlier through Martin Bonjour.