Palace led at half-time after pressure from Jobi McAnuff forced Mamady Sidibe to touch in Emmerson Boyce's cross.
Josip Skoko levelled with a lob shortly after the break but Palace regained the lead a minute later when McAnuff's deflected shot deceived Steve Simonsen.
Sidibe wasted a golden chance to make it 2-2 before Andy Johnson struck with a devastating run and finish.
Crystal Palace boss Iain Dowie:
"It's going to be enormously difficult (to achieve automatic promotion).
"Sheffield United have had a fantastic run and so have Reading.
"We think we're capable of going on a very good run but it would have to be a special run. Who knows? Never say never and I've always been an optimist."
Stoke: Simonsen, Hoefkens (Buxton 25), Duberry, Hill, Broomes, Russell, Brammer, Skoko, Gallagher (Sigurdsson 72), Bangoura, Sidibe.
Subs Not Used: de Goey, Mbuyi, Kopteff.
Goals: Skoko 47.
Crystal Palace: Kiraly, Boyce, Fitz Hall, Ward, Borrowdale, Riihilahti, Hughes, Watson (Leigertwood 84), McAnuff (Soares 87), Morrison, Johnson.
Subs Not Used: Speroni, Freedman, Reich.
Goals: Sidibe 30 og, McAnuff 48, Johnson 58.
Ref: A Leake (Lancashire).