Charlton's Jonathan Fortune struck in the 82nd minute to relegate rivals Palace from the Premiership.
Palace had looked set for a remarkable escape after coming back from Bryan Hughes' early opener for Charlton.
Eagles striker Dougie Freedman came off the bench and levelled within two minutes before earning a penalty which Andy Johnson put away.
But Fortune, at fault for both Palace's goals, headed in a Jerome Thomas free-kick to send the Eagles down.
It was a personal blow for Freedman, who saved Palace from relegation to the old Second Division in 2001 and had looked to have worked his magic again.
But a point was not enough for Iain Dowie's side, who were overtaken by West Brom's victory against Portsmouth.
Palace began the game well with Tom Soares finding space just a few yards out from goal but his shot was blocked by a desperate lunge by Luke Young.
Wayne Routledge got behind the defence only to fire just wide and Ben Watson tested Kiely with a free-kick which he curled round the wall.
After 28 minutes Johnson headed into the path of Routledge, who struck the sweetest of shots that was headed just inside the post before Kiely flung himself across goal to palm away for a corner.
It looked only a matter of time before the visitors got in front, but they fell victim to a cruel sucker punch.
Radostin Kishishev played an inch-perfect throughball for the onrushing Hughes who just managed to evade the challenge of Danny Butterfield to poke past Gabor Kiraly.
It took Palace a while to recover and when Danny Murphy's free-kick found Jonatan Johansson he was a whisker away from putting the Addicks 2-0 in front.
After 10 minutes of second-half frustration Dowie made a change, bringing off Butterfield and throwing on Freedman.
It paid almost instant dividends as the striker latched on to a poor header from Fortune and lobbed Kiely to send the Palace fans crazy.
Ten minutes later Freedman found room on the left and when his cross hit Fortune's arm referee Mark Clattenburg pointed to the spot.
Johnson had seen a penalty saved by Kiely in their 1-0 defeat to Charlton earlier this season.
But he made no mistake this time by sending him the wrong way for his 21st goal of the season.
It looked like the fairytale story was about to come true, but Fortune spoiled their day when he rose highest to head in Thomas' free-kick.
Freedman had one last chance to save the day, but Kiely brilliantly blocked his shot and ended Palace's hopes of another season in the top flight.
Charlton: Kiely, Young, El Karkouri, Fortune, Konchesky, Kishishev, Johansson, Holland (Thomas 67), Murphy (Sam 76), Hughes, Bartlett (Rommedahl 79).
Subs Not Used: Perry, Andersen.
Booked: Konchesky, Fortune.
Goals: Hughes 30, Fortune 82.
Crystal Palace: Kiraly, Butterfield (Freedman 56), Hall, Popovic, Granville, Leigertwood, Soares (Powell 86), Watson (Riihilahti 89), Hughes, Routledge, Johnson.
Subs Not Used: Speroni, Ventola.
Booked: Soares, Johnson.
Goals: Freedman 58, Johnson 71 pen.
Ref: M Clattenburg (Co Durham).