Trent Alexander-Arnold gave Liverpool the lead with a free-kick which eventually went down as a Bernd Leno own goal. Harry Wilson then levelled for Fulham.
Alexis Mac Allister fired Liverpool back into the lead with an outrageous volley, before Kenny Tete equalised for Fulham.
The visitors thought they had won it when substitute Bobby De Cordova-Reid headed them into a 3-2 lead, but Wataru Endo and Alexander-Arnold then scored screamers to condemn Fulham to defeat and move Liverpool above Manchester City ahead of City's match against Tottenham at the Etihad.
Dom Smith was on hand to rate the Liverpool players’ performances…
Caoimhin Kelleher 5
Should have done better with both of Fulham's goals.
Trent Alexander-Arnold 9
Popped up everywhere and was a constant threat. Scored an outstanding free-kick in the first half then went down unfortunately as an own goal and then scored a thunderous winner.
Joel Matip 6
Needed to get closer to Robinson for the cross which gave Fulham their first equaliser.
Virgil van Dijk 6
Calm and composed on the ball and wasn't directly at fault for either Fulham goal.
Kostas Tsimikas 7
The Greek full-back has deputised well for Andy Robertson and was energetic up and down the left flank throughout. Assisted Alexander-Arnold's winner with a header.
Ryan Gravenberch 6
The least involved of Liverpool's midfielders but used the ball responsibly.
Alexis Mac Allister 8
Scored an absolute cracker of a volley and was exceptional throughout.
Dominik Szoboszlai 8
One of the Hungarian's best performances yet in a Liverpool shirt. Exceptional.
Luis Diaz 7
More involved in Liverpool's free-flowing attacks in the first half than the second.
Darwin Nunez 7
Missed a clear chance in the second half, shorting after smashing against the crossbar. Some nice touches.
Mohamed Salah 7
Combined well with his attacking team-mates but it didn't really fall for the Egyptian. Blazed over when a goal for 3-3 was beckoning, but then assisted Endo to make sure Liverpool did get back on terms.
Cody Gakpo (Szoboszlai, 65') 6
Didn't see much of the ball.
Joe Gomez (Mac Allister, 65') 6
Slotted into defence when introduced.
Ibrahima Konate (Matip, 68') 6
Came on when Matip picked up an injury.
Wataru Endo (Gravenberch, 83') N/A
Scored his first Premier League goal. What a way to do it.
Not used: Adrian, Jones, Elliott, Doak, Quansah