Marco Silva's crop took a shock lead in Manchester through Andreas Pereira, but Mateo Kovacic led the revival with a fine brace before Jeremy Doku's 20-yard thunderbolt seemingly made sure of the points.
Rodrigo Muniz's late effort gave City something to think about as the match wound down, but the courageous Cottagers still left empty-handed as City matched a club record, extending their unbeaten run in the Premier League to 30 games.
Welcoming the Cottagers to the Etihad having won 16 league games in a row against Fulham - the longest streak for one team against another in the history of the English Football League - Man City unsurprisingly dominated proceedings from the off.
However, Pep Guardiola's men were left bewildered by a close-range opener from ex-Manchester United man Pereira, who latched onto arguably the assist of the season so far from the in-form Raul Jimenez.
Pereira's goal - and a subsequent Adama Traore miss that should have ended in a Fulham second - triggered an immediate response from City, though, as Kovacic's ferocious strike ensured that the hosts would only be behind for five minutes.
The Croatian followed up his first-half rocket with a well-taken second immediately after the restart, before a swerving Doku effort put the champions on the brink of victory, and Muniz's top-corner finish right at the death would prove to be just a consolation.
Now unbeaten in a half-century of home matches across all competitions - a run stretching back to before the 2022 World Cup - City remain within touching distance of Liverpool in second place, but Fulham remain in a respectable sixth after just their second top-flight loss of the tern.
MAN CITY VS. FULHAM HIGHLIGHTS
Andreas Pereira goal vs. Man City (27th min, Man City 1-1 Fulham)
Now then, now then - what do we have brewing here?
Alex Iwobi keeps a Fulham attack alive on the right-hand side and sends a ball into Jimenez, who is under pressure from two sky blue shirts but manages to take both of them out with an exquisite backheel.
The Mexican's outrageous piece of skill finds Pereira, who volleys home from close range to give the visitors a shock lead. The ex-Manchester United man scores at the Etihad, but that was all about the assist from Jimenez!
Mateo Kovacic goal vs. Fulham (32nd min, Man City 1-1 Fulham)
Silva's side just wasted a golden chance to double their lead, and in customary City fashion, the champions punish their visitors for squandering that opportunity.
Fulham can only half deal with an Ilkay Gundogan corner, and Kovacic - who was lurking on the edge of the box - smashes a first-time strike into the roof of the net with the aid of a deflection.
Mateo Kovacic goal vs. Fulham (47th min, Man City 2-1 Fulham)
Whatever words Guardiola had for his players at the break worked wonders, whatever Silva said went in one ear and out the other.
Fulham fail to make it out of their own half and City go on the rampage after winning the ball back, a move that ends with Bernardo Silva chesting the ball down and laying off Kovacic, who skips past a distraught Sander Berge and curls a lovely shot into the far corner from the edge of the box.
Jeremy Doku goal vs. Fulham (82nd min, Man City 3-1 Fulham)
If the comeback was not already complete, it certainly is now.
This one is all about Doku, who drives at the Fulham defence on the left-hand side before cutting inside and finding the top corner with a swerving effort.
A word for Rico Lewis too - the youngster made a smart run which distracted Joachim Andersen and opened up the angle for Doku to shoot.
Rodrigo Muniz goal vs. Man City (88th min, Man City 3-2 Fulham)
As Sir Alex Ferguson famously said, squeaky bum time for Manchester City!
Two substitutes combine as Reiss Nelson chips a lovely ball into Muniz, who has far too much time to set himself inside the box and finds the top corner with aplomb as sky blue shirts swarm around him.
MAN OF THE MATCH - MATEO KOVACIC
Much had been made of how City's engine room would cope without Rodri, but the classy Kovacic has done his utmost to ease any fears that the Sky Blues faithful may have and led the champions' response on Saturday.
There may have been a slight stroke of luck about his first finish, but the Croatian's second was simply sublime from start to finish.
MAN CITY VS. FULHAM MATCH STATS
Possession: Man City 58%-42% Fulham
Shots: Man City 20-11 Fulham
Shots on target: Man City 7-4 Fulham
Corners: Man City 8-3 Fulham
Fouls: Man City 4-10 Fulham
BEST STATS
WHAT NEXT?
A trip to Wolverhampton Wanderers awaits Man City after the international break on October 20, three days before they welcome Sparta Prague to the Etihad in the Champions League.
As for Fulham, Silva will now have a fortnight to prepare for the visit of another Champions League side in Aston Villa on October 19.