FOXBOROUGH, MA - APRIL 4: Jeff Cunningham #9 of the FC Dallas competes against the New England Revolution at Gillette Stadium on April 4, 2009 in Foxborough, Massachusetts. (Photo by Jim Rogash/Getty Images)
Real (9-11-7) has lost consecutive games and remained three points behind New England and Chivas USA for the final playoff spots with three matches remaining.
In the fifth minute, Cunningham took a pass from Dave van den Bergh inside the penalty area and fired a half-volley into the right corner of the net from 12 yards.
Van den Bergh then sent a through ball from outside the penalty box for David Ferreira, who raced past Real Salt Lake defender Nat Borchers and ripped a shot from close range into the left corner to make it 2-0 in the 10th minute.
Cunningham capped the scoring in the 87th minute with a right-footed blast from the top of the penalty circle for his 15th goal, tying him with Colorado forward Conor Casey for the MLS lead.
Van den Bergh's two assists gave him a career-high 10, while Ferreira also tallied assists on both of Cunningham's goals.
FC Dallas (8-12-6) is now 7-0 all-time at home against Salt Lake. FC Dallas goalkeeper Dario Sala finished with a season-high six saves, including a diving stop in the 41st minute on a point-blank shot by Salt Lake defender Pablo Campos from inside the 6-yard box. FC Dallas captain Pablo Ricchetti was benched for this match and not listed among the 18 players eligible.