READING FC shook of a host of injuries problems to record a 1-0 victory at Birmingham City and enhance their promotion prospects.

John Swift notched his seventh of the season in all competitions to secure a third straight Championship win on the trot and 12th in 16 matches for Jaap Stam's in-form side.

Stam altered his plans once again due to a mini selection crisis.

Fresh knocks to skipper Paul McShane, Joey van den Berg and Tiago Ilori meant Royals' boss delved deeper into his squad than perhaps ever before.

Another formation change also followed as the excellent Chris Gunter stepped into a three-man defence with Danny Williams wide on the right.

But none of it could knock Reading out of their stride.

There had been a recent setback - three defeats in a row to Derby, QPR and Manchester United - but the recovery speaks for itself.

This was a hard-fought victory against a Birmingham team fighting for every point under new boss Gianfranco Zola.

But there was no reward at the end as Swift netted his second in two games to bring home the points, leaving Blues winless in 10 games.

Suddenly, with five new additions in January to strengthen their promotion push, few would bet against Reading from catching the top two.

Stam made three changes from the side that defeated Cardiff City 2-1 at home, with Tyler Blackett replacing McShane and Jordan Obita coming in for van den Berg having served a one-match ban.

The other change saw George Evans replace Yann Kermorgant after the Frenchman suffered a knock against the Bluebirds, while Adrian Popa was among the substitutes having joined Royals yesterday.

That meant Reading started without a recognised striker again, with Garath McCleary, Roy Beerens and Swift switching up front.

McCleary threatened first when brought the best out of Tomasz Kuszczak in the fourth minute.

Birmingham threatened two minutes later, Ali Al-Habsi denying Lukas Jutkiewicz on the spin from 10 yards.

The same Blues player also steered an effort wide after teasing cross from Josh Dacres-Cogley.

But Reading almost broke the deadlock with 25 minutes gone when Liam Kelly's curling effort from the edge of the area bounced of the Birmingham crossbar.

And Stam's men went close again eight minutes later when Beerens sent Kelly away before a vital block-tackle snuffed out the chance.

Blues were also rueing what might have been soon after the restart when Jutkiewicz missed his kick from a dangerous spot after Kerim Frei had set him up.

And as the pressure began to build on the visitors, Al-Halbsi kept them in it with a crucial save to deny Craig Gardner from 25 yards.

Stam's answer was to replace top scorer McCleary with Yakou Meite - and six minutes later Royals broke the deadlock.

McCleary's clever backheel had led to Swift's opener against Cardiff.

This time it took a carbon-copy pass from Kelly to release Obita, the left-back sliding the ball across to Swift who converted from close range for his seventh of the campaign - equalling his tally at Brentford last season.

It knocked the stuffing out of Blues and, although Frei and Che Adams had chances from long range and Al-Habsi denied substitute Greg Stewart, Reading held on for a victory that closed the gap on second-placed Newcastle to three points having played two games more.

Reading travel to Ipswich Town this Saturday (3pm ko).

Birmingham: Kuszczak, Cogley, Shotton (Morrison 46), Robinson, Grounds, Davis (Stewart 83), Gleeson, Gardner, Adams, Jutkiewicz, Frei Koyunlu. Subs not used: Legzdins, Nsue, Kieftenbeld, Tesche, Keita. Booked: Gleeson 56.

Reading: Al-Habsi, Gunter (c), Obita, Moore, Blackett, Williams, Evans, Swift, Kelly, Beerens (Mendes 84), McCleary (Meite 71). Subs not used: Jaakkola, Wieser, Popa, Watson. Booked: McCleary 56, Meite 90.

Referee: Jeremy Simpson.

Attendance: 16,672 (Reading 672).