Match ends, Crystal Palace 1, Aston Villa 0.
Crystal Palace beat a lacklustre Aston Villa to secure a third successive Premier League victory and move seven points clear of the relegation places.
Palace created the better chances, although Cameron Jerome needed to clear Ciaran Clark's header off the line.
Jerome hit the crossbar, while referee Howard Webb appeared to award Palace a penalty only to reverse the decision.
Jason Puncheon found the bottom corner to secure a vital win and leave Villa only four points above 18th.
Prior to the match, Palace manager Tony Pulis said not even a victory over Villa would ease the fear of relegation but the Welshman will be a lot more relaxed than his counterpart Paul Lambert.
Palace improved as the match progressed and deserved the three points which take them to 12th in the table, seven points ahead of third-from-bottom Fulham, having played a game fewer than their London rivals.
Villa, perhaps understandably for a team attempting to avoid a fourth consecutive league loss, seemed nervous but that tension will only increase as the prospect of Championship football remains a real possibility.
They enjoyed the majority of possession, but it was a familiar tale for a side that has struggled to score this season, especially in the absence of injured top scorer Christian Benteke.
Jerome, Palace's biggest threat in the opening stages, booted the ball away three yards from his own goal when Julian Speroni seemed beaten by a Clark header.
Grant Holt went close for Villa, before Yannick Bolasie's penalty appeal was turned down when he went down under pressure from Holt, but no contact had been made.
Palace were engineering the best chances, with Bolasie and Jerome again at the centre of the action after the break.
Bolasie forced an acrobatic save from Brad Guzan and Jerome, two yards from goal, directed the rebound onto the crossbar.
Palace continued to threaten. Bolasie went close from close range, a Puncheon free-kick forced Guzan into action, and referee Webb initially awarded a penalty to the hosts before changing his mind after consulting with an assistant referee.
Again, Bolasie was the source of Villa's troubles but replays proved Nathan Baker had not handled the forward's cross.
Ultimately, it mattered little as moments later Bolasie found Puncheon and the former Southampton man outmuscled Ryan Bertrand to score and become Palace's leading scorer in the league.
Villa's best moments came after they fell behind, with Holt wasting a great chance and Speroni stopping a fine Andreas Weimann effort.
Aston Villa manager Paul Lambert: "We are a million miles from where we want to be.
"Anyone who knows me will tell you my ambition. If you can't win a game of football it is what happens. We have to win a game of football.
"You're in that group and the only simple solution is to win the next game, that gives you the breathing space."
For a gallery of photos from Saturday's Premier League action, head to the BBC Sport Facebook page.
- 8DikgacoiSubstituted forChamakhat 19'minutes
- 30JeromeSubstituted forMurrayat 75'minutes
- 7BolasieSubstituted forParrat 83'minutes
- 23BertrandBooked at 70minsSubstituted forAlbrightonat 82'minutes
- 2BakerBooked at 62mins
- 8El AhmadiSubstituted forWeimannat 82'minutes
- Howard Webb
- Shots on Target
Second Half ends, Crystal Palace 1, Aston Villa 0.
Offside, Crystal Palace. Marouane Chamakh tries a through ball, but Glenn Murray is caught offside.
Attempt missed. Ciaran Clark (Aston Villa) right footed shot from the centre of the box misses to the right. Assisted by Andreas Weimann with a headed pass.
Attempt missed. Joe Ledley (Crystal Palace) left footed shot from outside the box misses to the right. Assisted by Mile Jedinak.
Corner, Aston Villa. Conceded by Julian Speroni.
Attempt saved. Andreas Weimann (Aston Villa) right footed shot from the centre of the box is saved in the centre of the goal. Assisted by Grant Holt with a headed pass.
Jason Puncheon (Crystal Palace) hits the right post with a left footed shot from the right side of the box. Assisted by Mile Jedinak with a through ball.
Substitution, Crystal Palace. Jonathan Parr replaces Yannick Bolasie.
Substitution, Aston Villa. Marc Albrighton replaces Ryan Bertrand.
Substitution, Aston Villa. Andreas Weimann replaces Karim El Ahmadi.
Attempt missed. Matthew Lowton (Aston Villa) left footed shot from outside the box is close, but misses to the right. Assisted by Ashley Westwood.
Goal! Crystal Palace 1, Aston Villa 0. Jason Puncheon (Crystal Palace) left footed shot from the centre of the box to the centre of the goal. Assisted by Yannick Bolasie with a cross.
Substitution, Crystal Palace. Glenn Murray replaces Cameron Jerome.
Attempt missed. Jason Puncheon (Crystal Palace) left footed shot from outside the box is too high. Assisted by Joe Ledley.
Attempt blocked. Jason Puncheon (Crystal Palace) left footed shot from outside the box is blocked. Assisted by Cameron Jerome.
Ryan Bertrand (Aston Villa) is shown the yellow card for a bad foul.
Foul by Ryan Bertrand (Aston Villa).
Jason Puncheon (Crystal Palace) wins a free kick on the right wing.
Foul by Karim El Ahmadi (Aston Villa).