Swansea City and Leeds United suffered defeats that meant West Brom and Nottingham Forest became the Championship's new top two.
West Brom charged to the top of the Championship with a 4-2 win over Cardiff City as Slaven Bilic's side took advantage of shock losses for Swansea City and Leeds United.
Swansea went down 2-1 at home to struggling Stoke City, while 10-man Leeds were beaten by the same scoreline away to Millwall.
Those results allowed West Brom to surge to the summit, while Nottingham Forest – who beat Brentford 1-0 at home – moved up to second, with only goal difference keeping them off the top.
Preston North End and Bristol City are the other occupants of the top six after they won on Saturday, with Derby County, Huddersfield Town, QPR and Sheffield Wednesday also tasting victory.
SWANSEA AND LEEDS SHOCKED
Swansea were top of the league and playing winless bottom side Stoke, who had baffled many observers by sticking with manager Nathan Jones this week.
It looked like the match would go exactly as the form book suggested when Andre Ayew scored after 57 seconds, but Sam Clucas levelled the match and substitute Scott Hogan scored from close range in the last minute to seal a stunning victory.
Leeds were unable to overcome a 14th-minute incident that saw Gaetano Berardi sent off for conceding a penalty by fouling Tom Bradshaw, with Jed Wallace converting the Millwall spot-kick.
Bradshaw's backheel made it two on the stroke of half-time and despite Ezgjan Alioski getting a goal back 16 seconds into the second half, Leeds could not salvage a point as Millwall caretaker boss Adam Barrett – who has been linked with the vacant managerial role at Southend United – made a superb start.
WEST BROM TAKE FULL ADVANTAGE
Impressive loanee Matheus Pereira scored one and set up two more as West Brom won their third straight home game despite Cardiff making life interesting towards the end.
Long-range strikes from Pereira, Grady Diangana and Charlie Austin had the Baggies three goals clear with 15 minutes to go, but substitute Danny Ward scored twice for the Bluebirds before Romaine Sawyers sealed the hosts' victory in stoppage time.
Ben Watson's volleyed winner – his second goal in as many home games – was enough to earn victory for Forest, who are now 10 league games unbeaten.
Preston are one point behind the new top two after Daniel Johnson scored twice in a 5-1 home win over second-bottom Barnsley, Alex Neil's men scoring four times in 27 second-half minutes.
MITROVIC EARNS DRAMATIC DRAW
Fulham came from behind on two occasions to draw 2-2 with Charlton Athletic at Craven Cottage, a clever finish from on-loan Chelsea midfielder Conor Gallagher having put the visitors ahead in the first half.
Three goals in a mad eight-minute spell after the break meant the match was level after 63 minutes, Ivan Cavaleiro finding the top corner and Aleksandar Mitrovic scoring from close range for Fulham either side of a Macauley Bonne header.
Scott Parker's men dropped two places to seventh, one place behind Bristol City who beat Reading 1-0 courtesy of Famara Diedhiou's early diving header, Daniel Bentley impressing in goal for the home victors.
Elsewhere, Tom Lawrence – who has been charged with drink-driving – was among the scorers as Luton Town lost 2-0 at Derby.
Huddersfield beat Hull 3-0 to move out the bottom three, Massimo Luongo scored the only goal as Sheffield Wednesday saw off Wigan Athletic and Eberechi Eze netted in QPR's 4-2 win over Blackburn Rovers.