Marouane Fellaini capitalised on a mistake from Julian Speroni to score the winner 12 minutes from full-time after Jason Puncheon had cancelled out Juan Mata’s first-half penalty with a well-executed free-kick.
The victory moved United seven points clear of fifth-placed Liverpool in the Premier League table, meaning that if Brendan Rodgers’ side lose to Chelsea on Sunday, Louis van Gaal’s team will be guaranteed a place in the top four.
Palace went into the game knowing they were mathematically safe from relegation thanks to results elsewhere earlier in the day but fell to a fourth defeat in a row, despite a spirited second-half fightback.
The hosts started quickly but United soon began to control possession and almost went ahead when Daley Blind saw a goal-bound 25-yard left-footer turned around the post by Julian Speroni.
They continued to ramp up the pressure and after Ander Herrera had also flashed a long-range shot wide, they finally made the breakthrough, in the 19th minute, when Scott Dann blocked Ashley Young’s left-wing cross with his arm and Mata stroked home the resulting penalty.
Herrara could have made it 2-0 three minutes later but scooped a half-volley over from 10 yards after a nod down from Marouane Fellaini.
Palace threatened only sporadically from set pieces and counter-attacks down the wings, but they should have equalised when Mile Jedinak met a corner from the right after 26 minutes, only to steer his header high and wide.
Manager Alan Pardew replaced Joe Ledley with Jason Puncheon at half-time and they were a different team in the second period as the extra attacker and a more urgent pressing game saw them wrestle control of the game from United.
Glenn Murray hit the side-netting with a deft flick after 50 minutes and Puncheon had a credible claim for a penalty turned down four minutes later, but they were finally rewarded for their vast improvement in the 57th minute.
Murray won a free-kick from Chris Smalling on the left edge of the box and Puncheon punished United with a beautifully measured strike, although Blind in the wall was guilty of allowing the ball to fly over his head too easily.
United regained some control around the hour mark but Palace continued to create chances at will and after James McArthur had curled a shot wide, both Murray and Wilfried Zaha were denied by fine stops from the excellent David De Gea.
United were also threatening as the game became an end-to-end duel, and it was the visitors who snatched the inevitable winning goal. The outstanding Ashley Young crossed the from the left and the flight of the ball deceived Speroni, allowing Fellaini to nod home the winner into an empty net at the back post.
There was a setback earlier in the game for United when Wayne Rooney, who started as a lone striker, had to be replaced at half-time by Radamel Falcao with what appeared to be a dead leg.
Crystal Palace: Speroni (4), Ward (4), Dann (5), Delaney (6), Souare (6), Jedinak (6), Ledley (6), McArthur (7), Zaha (7), Bolasie (7), Murray (7).
Subs: Puncheon (8), Lee (6), Chamakh (6).
Manchester United: De Gea (8), Valencia (6), Jones (6), Smalling (6), Shaw (6), Blind (6), Herrera (7), Mata (7), Fellaini (7), Young (8), Rooney (6).
Subs: Evans (6), McNair (6), Falcao (6).
Man of the match: Ashley Young