Palace made by far the better start and only a diving save by Andy Marshall kept out Aki Riihilahti's sixth minute header.
The visitors continued to press and deservedly went ahead in the 19th minute when Andy Johnson drove the ball home after good work down the left by Dele Adebola.
The goal brought Ipswich to life and Alex Kolinko saved an Alun Armstrong header before Hermann Hreidarsson fired a good chance wide after a deflected Darren Ambrose free kick fell to him.
Darren Bent headed an Ambrose cross wide before Town levelled in the 39th minute when the teenager glanced a header beyond Kolinko from close range.
Almost immediately Dougie Freedman headed onto the roof of the Ipswich net after reacting quickest to a high ball lofted forward.
Julian Gray came on for Danny Granville at half time and straight away he crossed for Freedman who brought a fine save out of Marshall who managed to keep out the striker's header.
Marshall made a splendid save to block Tony Popovic's point-blank header before Palace regained the lead in the 77th minute when Danny Butterfield drove the ball past Marshall from a tight angle.
Ipswich tried to mount a recovery but Palace twice went close to a third goal, with Marshall tipping over Freedman's drive and then Jamie Clapham clearing a Johnson header off the line.
Right at the death, Bent headed a Jim Magilton cross back for Hreidarsson, but he could not get his six-yard header on target.