Cody McDonald came off the bench to secure a point for Championship strugglers Coventry.
Palace were hanging on after taking the lead through Darren Ambrose's third-minute penalty at the Ricoh Arena.
But subsitute McDonald scored from close range with 10 minutes remaining to snatch a draw.
Now unbeaten in three home games, Coventry are three points behind Nottingham Forest in 21st place with 11 games of the season left.
The hosts got off to a tricky start, with Chris Martin going down in the box under Nathan Cameron's challenge after Julian Speroni's long clearance.
Following lengthy Coventry protests, Ambrose made no mistake from the spot, beating Joe Murphy to score his seventh goal of the season.
Speroni maintained the visitors' advantage by keeping out efforts from Clive Platt and Gary McSheffrey.
Coventry were almost caught out when Cameron's weak header let in Jermaine Easter, whose shot flew over the crossbar.
But McDonald hauled Coventry level with his second goal since joining from Norwich last summer.
Coventry manager Andy Thorn:
"What I will say is the amount of dithering that went on to give the penalty, it was almost like a circus in the end.
"You have got to be 110% sure when you give a penalty. The referee went to go and ask the linesman in the end and the referee was closer, so surely if you are going to give you have got to be certain.
"I haven't seen it, so I apologise if I am wrong, but it is the way it was handled that I didn't like.
"We were edgy and nervy to begin with, but once we settled down we played some good stuff and got in some good areas and we thoroughly deserved a draw."
Crystal Palace manager Dougie Freedman:
"Overall a draw is probably the correct result because obviously I am disappointed to lose the lead in the last 10 minutes, but we have to give credit to Coventry because they showed good fighting spirit and that just might keep them up.
"The teams that are already up there in the top six are established teams that have been there for most of the season.
"The cup run has probably meant we have dropped a few points because of fatigue. That has not helped us and it has left us with a little bit of a gap from the top six.
"But we are trying. We are getting points each week - just not enough to close the gap."
Live Text Commentary
Full Time The match has reached full-time.90:00 +1:39
Shot from just outside the box by Wilfried Zaha misses to the right of the goal.90:00 +0:34
Owen Garvan takes a inswinging corner.89:55
The ball is delivered by Paul McShane, Richard Keogh makes a clearance.89:14
Gary McSheffrey delivers the ball, clearance made by Anthony Gardner.87:24
Outswinging corner taken from the left by-line by Owen Garvan, Headed effort from inside the box by Glenn Murray misses to the right of the target.86:43
Foul by Cyrus Christie on Dean Moxey, free kick awarded. Julian Speroni takes the free kick.84:49 Substitution
Substitution Jordan Clarke goes off and Cyrus Christie comes on.84:49 Substitution
Substitution Kwesi Appiah replaces Chris Martin.83:20
Martin Cranie produces a cross, Anthony Gardner makes a clearance.82:03
Mile Jedinak delivers the ball.81:10
A cross is delivered by Carl Baker, clearance made by Patrick McCarthy.80:48
Dean Moxey concedes a free kick for a foul on Carl Baker. Free kick taken by Sammy Clingan.79:58
Wilfried Zaha concedes a free kick for a foul on Gary McSheffrey. Free kick taken by Martin Cranie.79:03 Goal scored
Goal! - Cody McDonald - Coventry 1 - 1 C Palace Cody McDonald gets on the score sheet with a goal from deep inside the penalty box to the bottom right corner of the goal. Coventry 1-1 Crystal Palace.78:33
Carl Baker takes a shot. Blocked by Anthony Gardner.77:55
Floated corner taken left-footed by Gary McSheffrey from the left by-line, clearance made by Glenn Murray.77:05
Gary McSheffrey produces a left-footed shot from inside the area that clears the bar.76:42
Floated corner taken by Carl Baker, Mile Jedinak manages to make a clearance.76:36
Alex Nimely produces a cross, Anthony Gardner gets a block in.
A cross is delivered by Sammy Clingan, clearance made by Patrick McCarthy.75:20
The ball is crossed by Gary McSheffrey.74:56
Short corner taken by Gary McSheffrey.74:33
Martin Cranie takes a shot. Wilfried Zaha gets a block in.73:32
Dean Moxey has an effort at goal from just outside the box which goes wide of the left-hand post.72:51
Patrick McCarthy restarts play with the free kick.72:51 Booking
Booking Gary McSheffrey booked.72:25
Unfair challenge on Wilfried Zaha by Gary McSheffrey results in a free kick.72:06
A cross is delivered by Alex Nimely, clearance by Patrick McCarthy.71:33
Dean Moxey crosses the ball, save by Joe Murphy.70:45
Glenn Murray gives away a free kick for an unfair challenge on Richard Keogh. Richard Keogh takes the free kick.68:45
Julian Speroni takes the free kick.68:45 Substitution
Substitution Dean Moxey joins the action as a substitute, replacing Darren Ambrose.68:45 Booking
Booking The referee shows Nathan Cameron a yellow card.68:31
Free kick awarded for an unfair challenge on Anthony Gardner by Nathan Cameron.67:35
Oliver Norwood has a direct shot on goal from the free kick, save by Julian Speroni.67:35 Booking
Booking Paul McShane receives a yellow card for unsporting behaviour.66:59
Free kick awarded for an unfair challenge on Gary McSheffrey by Paul McShane.64:46
Cody McDonald is ruled offside. Julian Speroni takes the free kick.63:44
Free kick awarded for an unfair challenge on Paul McShane by Cody McDonald. Direct free kick taken by Darren Ambrose.63:09
The ball is sent over by Carl Baker, save made by Julian Speroni.60:11
Gary McSheffrey crosses the ball, Close range headed effort by Alex Nimely goes wide of the left-hand post.59:26
The ball is swung over by Gary McSheffrey, clearance by Anthony Gardner.59:17
The ball is sent over by Jordan Clarke.57:32
Alex Nimely takes a shot. Save by Julian Speroni.56:37 Substitution
Substitution Clive Platt leaves the field to be replaced by Cody McDonald.56:37 Substitution
Substitution Sammy Clingan comes on in place of Gary Deegan.56:16
Foul by Carl Baker on Wilfried Zaha, free kick awarded. Jonathan Parr takes the direct free kick.55:46
Glenn Murray takes a shot. Save by Joe Murphy.55:11
Nathan Cameron concedes a free kick for a foul on Chris Martin. Direct free kick taken by Darren Ambrose.54:32
Jordan Clarke crosses the ball.54:07
Jonathan Parr delivers the ball, Joe Murphy makes a save.53:52
Alex Nimely gives away a free kick for an unfair challenge on Paul McShane. Direct free kick taken by Darren Ambrose.52:38
Julian Speroni takes the free kick.52:38 Substitution
Substitution Glenn Murray is brought on as a substitute for Jermaine Easter.52:38
Free kick awarded for an unfair challenge on Wilfried Zaha by Carl Baker.52:12
Floated corner taken from the right by-line by Carl Baker.51:53
Corner taken by Gary McSheffrey.51:46
A cross is delivered by Gary McSheffrey, blocked by Darren Ambrose.51:23
Free kick awarded for an unfair challenge on Gary Deegan by Mile Jedinak. Free kick taken by Oliver Norwood.49:38
The ball is sent over by Jordan Clarke, Paul McShane makes a clearance.47:01
The ball is sent over by Carl Baker, clearance by Anthony Gardner.45:12
Alex Nimely produces a right-footed shot from just outside the box that goes wide left of the goal.45:01
The referee starts the second half.45:00 +2:36 Half time
Half Time The whistle is blown to end the first half.45:00 +1:58
Centre by Jordan Clarke, clearance by Anthony Gardner.45:00 +1:33
Darren Ambrose delivers the ball, Joe Murphy makes a comfortable save.44:48
Anthony Gardner gives away a free kick for an unfair challenge on Clive Platt. Gary McSheffrey has an effort direct from the free kick.43:46
Gary McSheffrey delivers the ball, Foul by Clive Platt on Anthony Gardner, free kick awarded. Direct free kick taken by Julian Speroni.42:48
Richard Keogh challenges Chris Martin unfairly and gives away a free kick. Free kick taken by Darren Ambrose.42:14
Gary McSheffrey sends in a cross.41:15
Gary McSheffrey delivers the ball, Anthony Gardner manages to make a clearance.39:03
The referee penalises Carl Baker for handball. Free kick crossed right-footed by Darren Ambrose from left wing.38:16
Foul by Clive Platt on Jonathan Parr, free kick awarded. Julian Speroni takes the direct free kick.37:00
Carl Baker delivers the ball, clearance by Paul McShane.36:10
Corner taken by Darren Ambrose from the right by-line, Shot by Chris Martin from deep inside the penalty area misses to the right of the target.35:50
Shot from 20 yards from Mile Jedinak. Save by Joe Murphy.35:07
The free kick is swung in right-footed by Darren Ambrose, Oliver Norwood manages to make a clearance.35:07 Booking
Booking Jordan Clarke goes into the book for unsporting behaviour.34:33
Jordan Clarke concedes a free kick for a foul on Mile Jedinak.34:06
Gary McSheffrey crosses the ball, Header by Alex Nimely from deep inside the penalty area misses to the right of the target.33:35
Carl Baker sends in a cross, Jonathan Parr gets a block in. Outswinging corner taken from the right by-line by Carl Baker.33:06
The ball is sent over by Alex Nimely, Patrick McCarthy gets a block in. Corner taken right-footed by Carl Baker.32:38
Alex Nimely takes a shot. Julian Speroni makes a save.31:05
The ball is sent over by Gary McSheffrey, save by Julian Speroni.30:14
Inswinging corner taken by Darren Ambrose.29:05
Nathan Cameron concedes a free kick for a foul on Jermaine Easter. Darren Ambrose fires a strike on goal direct from the free kick.23:46
Corner from the left by-line taken by Gary McSheffrey, Paul McShane makes a clearance.23:40
A cross is delivered by Jordan Clarke, Paul McShane makes a clearance.22:05
Effort on goal by Jermaine Easter from just inside the penalty area goes harmlessly over the target.20:20
The ball is delivered by Darren Ambrose, clearance made by Jordan Clarke.20:04
Gary McSheffrey concedes a free kick for a foul on Darren Ambrose. Paul McShane takes the direct free kick.18:13
A cross is delivered by Jordan Clarke. Gary McSheffrey takes a shot. Save by Julian Speroni.17:31
A cross is delivered by Darren Ambrose, Joe Murphy makes a comfortable save.16:43
Centre by Carl Baker, Clive Platt takes a shot. Julian Speroni makes a save.16:10
The ball is crossed by Darren Ambrose, Richard Keogh makes a clearance.14:16
The referee blows for offside against Gary McSheffrey. Indirect free kick taken by Julian Speroni.13:50
Floated corner taken by Carl Baker.13:26
Richard Keogh takes a shot. Save made by Julian Speroni.11:33
The ball is crossed by Gary McSheffrey, Julian Speroni makes a comfortable save.10:53
The ball is sent over by Paul McShane.8:57
Nathan Cameron challenges Chris Martin unfairly and gives away a free kick. Patrick McCarthy restarts play with the free kick.8:47
Centre by Gary McSheffrey, Anthony Gardner makes a clearance.6:32
Jonathan Parr crosses the ball, clearance by Martin Cranie.5:38
The assistant referee signals for offside against Clive Platt. Indirect free kick taken by Patrick McCarthy.5:11
The ball is sent over by Jonathan Parr, Nathan Cameron makes a clearance.4:47
Chris Martin delivers the ball.4:40
Darren Ambrose delivers the ball.4:34
The ball is swung over by Gary McSheffrey.3:44
Assist on the goal came from Chris Martin.3:44 Goal scored
Goal! - Darren Ambrose - Coventry 0 - 1 C Palace Power penalty scored by Darren Ambrose. Coventry 0-1 Crystal Palace.1:46
Chris Martin fouled by Nathan Cameron, the ref awards a Penalty.1:35
The ball is delivered by Carl Baker, save by Julian Speroni.0:44
Foul by Anthony Gardner on Alex Nimely, free kick awarded. Direct effort from the free kick comes in from Gary McSheffrey.0:00
The game kicks-off.
Live data and text provided by our data suppliers