Fulham slumped to a fifth defeat in six Premier League matches and finished a miserable afternoon at Craven Cottage with 10 men.
The Whites looked bright in the opening exchanges but conceded from the visitors’ first counter-attack inside the opening 10 minutes.
A sweet reverse pass from Wilfried Zaha was slotted away by Jairo Riedewald, shortly after the Ivorian forced a save from Alphonse Areola against the run of play.
A well-organised Palace outfit seemed happy to soak up Fulham’s attacks as the impressive Ademola Lookman came closest to equalising in the first half by striking the post twice, with Aleksandar Mitrović blazing a follow-up over the bar.
Still searching for their first win of the season, the home side enjoyed a sustained spell of pressure after the break but were unable to cut open Roy Hodgson’s rigid banks of four.
And they were made to pay as Palace doubled their lead on the counter, when a ball across the face of goal was tapped in by Zaha at the far post.
Half-chances from crosses came and went for Mitrović, who also cut a frustrated figure last weekend at Sheffield United, and substitute Aboubakar Kamara received a straight red card for a poor tackle on former QPR man Eberechi Eze.
Tom Cairney pulled one back with a fantastic long-range drive into the top corner in the dying minutes of added time, but it was mere consolation as the Whites lost their twelfth consecutive London derby in the Premier League.
Fulham: Areola, Aina, Adarabioyo, Ream, Lemina (Reed 79), Anguissa (Kamara 66), Cairney, Robinson, Loftus-Cheek (Decordova-Reid 73), Lookman, Mitrović