Reading were stung by a last minute winner from substitute Brett Pitman at Portman Road, having come from behind to seemingly deserve a point from a trip to Ipswich.
Bartosz Bialkowski saved from Vydra while Al Habsi parried away Ryan Fraser's effort at his near post in a first half that lacked many clear cut opportunities at either end, but Fraser's deflected effort bounced in off the inside of the right post to hand the home side a lead before the hour mark.
Reading were level soon after though, Hal Robson-Kanu drawing a foul from Cole Skuse inside the area and substitute Garath McCleary smashing the subsequent spotkick down the middle to make it 1-1. But the sting in the tail came in the form of a winner in the final minute of the ninety. Luke Varney raced down the left and picked out Brett Pitman in the middle who slid in to convert from six yards out.
Boss Brian McDermott made one change to the side that thrashed Walsall at the weekend, handing Yann Kermorgant his first start in a Royals shirt since signing for the club last month. The injured Aaron Tshibola made way in the starting eleven, while there was a return to the squad for a fit-again Garath McCleary who began the game as a substitute.
All Reading's early routes to goal were coming from the bustling Hal Robson-Kanu who turned Maitland-Niles on half way and then squeezed between two defenders, but a third Ipswich man denied the winger a shot at goal.
Ipswich meanwhile were looking most dangerous with inswinging corners from the left which Ali Al Habsi had to punch clear and then Ollie Norwood nodded away from danger in the opening 20 minutes.
A low cross from the other flank from Murphy almost caught out Al Habsi and Ferdinand who hesitated in clearing it, but Gunter hacked the ball away before Town could take advantage. And Ipswich were building momentum that almost paid off when Fraser got in behind the back line down the left and crossed into the box where Cooper stuck out a leg to avert the danger.
Moments later, Robson-Kanu was released into space down the right and his low cross was deflected away by Hyam with Quinn lurking in the middle. And Maitland-Niles had a good shooting opportunity open up for him soon after that - only for Cooper to charge down his scuffed effort.
Robson-Kanu and Vydra combined well to almost unlock the Town defence, Vydra doing well to keep possession and tee up HRK for a shot on the edge of the box, only for his effort to be charged down by two Ipswich defenders.
Vydra then linked up with Kermorgant, sliding the ball into his strike partner but the return pass was just to heavy for Vydra to get on to in the middle. He did manage to fizz the ball back for Williams on the edge of the box, but again a Royals effort was charged down before Bartosz Bialkowski could be called into action.
Norwood delivered a lovely ball into the feet of Vydra with the outside of his boot, but the striker's effort on goal was smothered by the Town stopper.
Then in the final minutes of the half, Al Habsi was forced to make a good save at his near post when Fraser brought down a deep crossfield ball at the end of an Ipswich break and drilled an effort on target from a difficult angle.
And in the third minute of injury time at the end of the first half, Murphy came close to opening the scoring with a downward header that skidded inches wide of the bottom right corner.
Half-time: Ipswich 0 Reading 0
The first chance of the second period also fell the hosts' way, Quinn and Cooper collectively only clearing as far as Hyam who rifled an effort over from the edge of the Royals box.
Five minutes later and Reading had a good chance of their own. Kermorgant broke down the right and crossed low into Vydra who struck it first time only for a sliding body of a Town defender to get in its way en route to goal.
But before the hour, Ipswich took the lead. A burst down the right ended with a ball cut back to Ryan Fraser
who dug the ball out from under his feet to shoot and, via a deflection, it struck the inside of the right post and dribbled over the line.
Garath McCleary was brought on, but Freddie Sears came close to scoring another with a deflected shot from distance that this time skidded into the side netting.
McCleary did have a chance to set up Vydra with 25 minutes remaining though, breaking from a Ipswich attack which had seen Al Habsi save from a Smith header - but the winger delayed too long in trying to pick out an unmarked Vydra in the middle and his low cross was calmly cut out in the end.
However, the excellent Robson-Kanu won a penalty moments later, as he was brought down by Skuse inside the box. And McCleary
hammered the ball home from the spot, drilling it straight down the middle to make it 1-1.
Jonas Knudsen drilled a powerful low 25-yard effort on target with ten minutes to go, but Al Habsi was down well to save low to his left - then Reading broke through Vydra who fed Kermorgant, but the forward's dinked cross was just too high for McCleary to get his head to.
Vydra saw an effort charged down, then Al Habsi saved brilliantly from an offside Pitman as both sides pressed for a winner. And it came for the hosts with two minutes remaining. Varney chased a ball down the left and he picked out fellow substitute Pitman
in the middle who slid in to score what would be the winner.
Full-time: Ipswich 2 Reading 1
Ipswich: Bialkowski, Knudsen, Chambers (c), Smith, Berra, Maitland-Niles (Bru HT), Skuse, Fraser, Hyam (Pitman 82), Sears, Murphy (Varney 86).
Subs: Henly, Coke, Foley, Digby.
Reading: Al Habsi, Gunter, Obita, Ferdinand, Cooper, Norwood (c), Williams, Quinn (McCleary 61), Robson-Kanu, Kermorgant, Vydra.
Subs: Bond, Taylor, McShane, Hector, Piazon, John.
Yellow: Obita, Norwood.
Referee: Mr Tim Robinson
Att: 16,616 (205 away)