Danny Williams’ injury time penalty saw Town go down to a controversial defeat at the Madejski Stadium.
Reading went ahead a minute before half-time when Grant Ward was judged to have handled Tyler Blackett’s cross from point blank range, Garath McCleary finding the net from the spot.
Town were level though four minutes after the break, Blackett the guilty party this time for an apparent push on Brett Pitman and the striker powered his penalty into the roof of the net.
Pitman and Tommy Smith went close to putting Blues ahead but in added on time, Jonas Knudsen was penalised as he challenged for a corner and Williams gave the home side the points from 12 yards.
Town stayed with the same side that beat Preston before the international break, with newboys Leon Best and Tom Lawrence starting on the bench.
Blues started on the front foot and it needed a big hand from Ali Al Habsi in the Reading goal to beat out Freddie Sears’ snap shot from inside the box.
The Royals responded immediately with Bartosz Bialkowski doing brilliantly to get off his line quickly and deny Roy Beerens when he was in on goal.
Beerens was becoming a problem to the Town defence and another cross from the wideman was met by Yann Kermorgant but Tommy Smith cleared.
Luke Chambers headed away from danger from McCleary’s cross before Beerens got on the ball again, cutting inside the Town defence and arrowing a right foot shot at the net, Bialkowski equal to the task.
McCleary sent in another dangerous cross as the Royals pressed for an opener, Ward doing likewise from the right for Town.
Al Habsi showed neat footwork to beat Pitman after a backpass put the ‘keeper under pressure but on the stroke of half-time referee Simpson pointed to the spot after judging Ward to have handled Blackett’s cross and McCleary did the rest.
Town were level four minutes after the restart and again in controversial circumstances, Pitman judged this time to have been pushed in the box by Blackett and the frontman was equally emphatic from the spot.
It needed an excellent save from Al Habsi to keep out Ward’s close range effort as Town threatened a quickfire double, Bialkowski having a much easier task dealing with McCleary’s header.
Blues should have been ahead on the hour, Smith first to the loose ball from a corner but he sliced his shot over the bar with his normally reliable left foot.
Bialkowski smothered the danger as Kermorgant looked for McCleary’s burst into the box, Pitman then testing Al Habsi at his near post.
Christophe Berra headed over from a corner before Town made a first change, Teddy Bishop on for Kevin Bru midway through the half.
Ward got on the end of Pitman’s header but couldn’t find Sears with his cross, Bialkowski doing well to push Kermorgant’s strike behind for a corner.
Sears led a breakaway for Town but couldn’t find Pitman, then Jonathan Douglas’ header from a corner was held by Al Habsi.
Stephen Quinn headed over from 10 yards out as the points hung in the balance, Cole Skuse forcing Al Habsi into a low save from distance at the other end.
Luke Varney replaced Ward for the final five minutes, Bialkowski holding firm from Kermorgant’s header to see Town to what looked a deserved point until Williams was handed the chance to win it from the penalty spot.
Reading: Al Habsi, Gunter, Moore, McShane, Blackett (Obita 81), Van den Berg, Williams, Evans (Quinn 58), Beerens, McCleary (Swift 65), Kermorgant. Subs not used: Watson, Mendes, Harriott, Jaakkola. Booked: Moore, Gunter, Evans, Blackett, Van den Berg.
Town: Bialkowski, Chambers, Berra, Smith, Knudsen, Bru (Bishop 67), Douglas, Skuse, Ward (Varney 86), Sears, Pitman. Subs not used: Gerken, Best, Webster, Lawrence, Grant. Booked: Chambers, Berra, Knudsen.