Newcomer Andrew Wenger also scored for Philadelphia (1-1-4), tying it at 1 in the 55th minute.
Kyle Beckerman scored in the 85th minute for Salt Lake. Luke Mulholland also scored for RSL, which improved to 2-0-4 — the best start through six games in franchise history.
Mulholland's goal came in the aftermath of a frenetic series.
Forward Olmes Garcia was fouled in the crease by Philadelphia defender Austin Berry and the result was a penalty kick. Alvaro Saborio's subsequent shot was saved by goalkeeper Zac MacMath, who also stopped a penalty kick last week in a 2-2 draw at Chicago. But the ball bounced off MacMath and Mulholland scored.
The Union traded forward Jack McInerney to the Montreal Impact this week for Wenger, the No. 1 overall pick in the 2012 MLS SuperDraft.