Birmingham regained second place in the Coca-Cola Championship but will be disappointed not to have extended their advantage after stuttering to a goalless draw at rock-bottom Charlton.
The Blues returned to the second automatic promotion spot after Sheffield United had overhauled them with victory at Reading yesterday.
But they are only a point ahead of the Blades with four games remaining after a poor display against a Charlton side who look certain to be relegated.
Cardiff moved into third place with a 2-0 victory at Crystal Palace, who had manager Neil Warnock sent to the stands. Top-scorer Ross McCormack sent Julian Speroni the wrong way from the spot in the first half after Paddy McCarthy pulled Joe Ledley's shirt, and the Scot netted a second goal in injury time to make it 21 for the season.
Burnley cemented their play-off push in sixth place with a 1-0 win over managerless QPR thanks to Clarke Carlisle's strike and Swansea kept the pressure up just outside the top six with a 2-1 win over Norwich.
But Preston's hopes took another blow after they succumbed 1-0 at home to Blackpool in the day's early kick-off, Charlie Adam drilling home the winner just before half-time.
At the bottom, Nottingham Forest moved out of the bottom three at Norwich's expense with a last-gasp 3-2 win over Bristol City.
Dele Adebola had put the visitors 2-1 up with 12 minutes to go, but Forest dug deep and pulled off a crucial victory, Joe Garner drawing things level in the 83rd minute and loan signing Dexter Blackstock netting the winner in injury time.
Local rivals Derby virtually secured their safety though with a win at Sheffield Wednesday, Rob Hulse netting the Rams' winner on the stroke of half-time.
And Barnsley remain in trouble after Tommy Smith's equaliser two minutes from time denied the Tykes all three points at Watford.
Elsewhere, Doncaster ran out 3-1 winners at Ipswich thanks to late strikes from Paul Heffernan and substitute James Hayter, while Plymouth destroyed Coventry with four goals in a little over 20 first-half minutes, Ashley Barnes, Jamie Mackie, Alan Judge and Marcel Seip getting their name on the scoresheet.