The Tractor Boys blew their chance as Jay Demerit tapped in on the stroke of half-time and Bruce Dyer netted a second with nine minutes left.
Tommy Miller, who missed a hatful of chances earlier in the game, reduced the arrears with a penalty four minutes from time but they could not find the all-important equaliser.
Sunderland took advantage by comfortably beating bottom side Rotherham 4-1 at the Stadium of Light. Dean Whitehead opened the scoring in the 13th minute and the lead was doubled by substitute Sean Thornton, who fired in a free-kick with his first touch after 36 minutes.
Gary Breen scored the third just after the interval and Thornton added his second after 73 minutes. Andy Monkhouse netted a consolation for Rotherham with 13 minutes left as Sunderland go level on points with Wigan behind Ipswich.
West Ham made further inroads into the play-off positions as they saw off relegation-haunted Gillingham 1-0 at Priestfield Stadium courtesy of a Marlon Harewood goal, which moves his side above Preston into fifth place.
Sheffield United failed to build on their FA Cup heroics as they went down to a 3-0 defeat at Plymouth. Graham Coughlan, Paul Wotton and Dexter Blackstock scoring.
Stoke made it three league wins in a row as they defeated Leicester 3-2 at the Britannia Stadium. Gareth Williams gave the Foxes the lead but Dave Brammer, Gifton Noel Williams and Gerry Taggart put Stoke in control with Joey Gudjonsson getting a late consolation.
A late Carl Cort goal gave Wolves a deserved 1-1 draw against QPR at Loftus Road after Kevin Gallen's 11th-minute strike looked to be enough for Rangers.
Millwall kept in touch with the play-off places with a 1-0 triumph over Cardiff at Ninian Park. Daniele Dichio's penalty the only goal.
Reading have not given up hope of a top-six finish but they could only draw 1-1 with Crewe at Gresty Road. Luke Varney put the Railwaymen in front but Dave Kitson bagged the equaliser with 20 minutes remaining.
In League One, a late penalty by Kevin Nicholls strengthened Luton's stranglehold at the top of the division as they beat Walsall 1-0 at Kenilworth Road.