Jozy Altidore scored 11 minutes from time to help Toronto FC edge a five-goal thriller with Chicago Fire.
The visitors were ahead inside the opening 60 seconds as Gilberto latched on to Patrick Nyarko's cross to score his second of the season.
Toronto got back on level terms before the half-hour mark as neat build-up play from Sebastian Giovinco and Damien Perquis gave Jonathan Osorio the chance to beat Jon Busch.
Chicago restored their advantage minutes after the restart as Nyarko and attacker Mike Magee set up Gilberto to net his second of the evening.
However, the Canadians managed to equalise on 59 minutes when Giovinco crossed for Michael Bradley and the US international found a way past Busch.
Toronto then snatched a late winner in the dying minutes as ex-Sunderland forward Altidore scored his 11th of the campaign to pull the Reds within three points of Eastern Conference leaders New York Red Bulls.