The Union (13-3-9, 48 points) improved to 10-0-1 this season when scoring at least two goals.
- MLS on ESPN+: Stream LIVE games, replays (U.S. only)
- Soccer on ESPN+: FC Daily | Futbol Americas
- Don't have ESPN? Get instant access
Philadelphia also remained unbeaten at home (8-0-5), the only team in the league to accomplish the feat this late in the season.
Chris Mueller scored the lone goal for Chicago Fire FC (8-11-6, 30 points), which entered the game on a five-game unbeaten streak at 4-0-1.
Philadelphia's Mikael Uhre nearly scored in the ninth minute as his strike from inside the top of the box was stopped with a diving save by goalkeeper Gabriel Slonina.
Chicago was also denied of a solid scoring chance when Jairo Torres had a point blank shot from 10 yards out in the 13th minute, But four-time All-Star goalkeeper Andre Blake was in position to knock the ball away.
The Union went ahead 1-0 in the 16th minute as Gazdag gathered a pass in the box and fired a shot over Slonina. It was Gazdag's 12th goal of the season.
In the 27th minute, Blake made another stellar stop on a strike from Kacper Przybylko in the middle of the box.
Elliott scored in the 37th minute as he broke free in front for a 2-0 advantage. It was his first goal of the season.
The Fire had three consecutive corner kicks beginning in the 41st minute, but all three by Xherdan Shaqiri were turned away.
Chicago came out ultra aggressive to open the second half and closed within 2-1 in the 49th minute when Mueller received a crisp pass from Shaqiri and scored. Shaqiri recorded his team-best 11th assist and Mueller's goal was his fourth.
The Union regained a 3-1 in the 53rd minute when Carranza gathered a rebound and chipped it over Slonina for his ninth goal of the campaign.
Chicago's Gaston Gimenez was carried off on a stretcher by trainers in the 66th minute after writhing on the field in pain for several minutes following a tackle by Elliott.
Burke, who entered the game in the 72nd minute, added an insurance goal in the 82nd minute for a three-goal lead. It was his fifth goal of the season.