It was the visitors who had the better of the early play, although Sam Baldock had the first opportunity to open the scoring.
David McGoldrick dragged a shot wide of the mark with Ipswich's first effort on goal, before Daryl Murphy broke the deadlock on the half-hour mark.
The 29-year-old - in the side for Aaron McLean - found the bottom corner of the net from around 12 yards out to give the visitors a deserved lead.
That is the way it stayed until half time, but the hosts were back on level terms moments after the break.
Steven Davies fired into the roof of the net when the ball fell kindly for him inside the area.
Second-half sub Stead notched the winning goal in the last minute of normal time, scrambling the ball home from inside the box.