Ricardo Fuller's first-half strike put the Addicks in front, but the introduction of veteran Kevin Phillips proved the turning point of an exciting, full-blooded match.
He played a key part in a fine comeback from Palace, Glenn Murray scoring twice to make it 25 for the season.
"I would say that in the first half and even the first hour, it was some of the best stuff we've played," said Charlton boss Chris Powell.
"But of course, you need to take your chances when they come and we needed to take more than the one we got because we knew there would be a response from Palace.
"Obviously, somebody like Murray, who has been scoring goals all season, he eventually got his chances and he took them.
"It's tough to take because it could be quite easy to forget about how well we played in that first 60 minutes.
"It was a proper local derby with chances at both ends. It's just a body blow we didn't come out on top."