The Swans stay first on goal difference ahead of Huddersfield - who pulled off a dramatic 3-2 win over Brentford.
Brentford lead 2-1 going into second-half stoppage time thanks to goals from Isaiah Rankin and DJ Campbell, with Pawel Abbot scoring for the Terriers.
But in a dramatic finale both sides were reduced to 10 men, before Danny Schofield levelled and Andy Booth hit a winner in the sixth minute of time added on.
Southend are third after beating Tranmere, with Scunthorpe also on 17 points following the 3-1 loss at Doncaster.
That result pulled Rovers off the bottom of the table, where they are replaced by MK Dons - who drew 0-0 with Barnsley at the National Hockey Stadium.
Nottingham Forest pulled out of the relegation zone with a 2-0 win over Rotherham at the City Ground, only the third time they have avoided defeat all season.
Jack Lester scored from the spot 15 minutes from time, with Kris Commons adding the second with a fluke cross-cum-shot.
Chesterfield came back from 2-0 down to win 3-2 at Walsall in a dramatic second-half.
Jorge Leitao and Mark Wright had put the Saddlers on course for a win, but Mark Allott then netted twice before Wayne Allison grabbed the winner.
Matthew Blinkhorn came off the bench to earn Blackpool a 1-1 draw at Bristol City.
Bournemouth beat Swindon 2-0 thanks to a brace from James Hayter.
Colchester beat Port Vale 1-0 at Vale Park, with Chris Iwelumo grabbing the winner after 34 minutes, while Oldham beat Gillingham 1-0 at Priestfield.
Bradford drew 1-1 with Yeovil Town, with Ben Muirhead levelling for the Yorkshire side after Terry Skiverton had fired the Glovers ahead.