Two magical goals from Samir Nasri rescued Arsenal as they survived another wasteful performance at the Emirates Stadium to move top of the Barclays Premier League.
The France star's jaw-dropping composure was in stark contrast to that of his team-mates, who almost threw away another three points in front of their own fans.
Nasri put them ahead early on but a sickening clash of heads between Laurent Koscielny and Sebastien Squillaci allowed Diomansy Kamara to equalise before Nasri netted a glorious winner.
With Manchester United's match postponed due to the big freeze and Chelsea held by Everton, the victory sent Arsenal a point clear at the summit.
But this was far from a champion performance, more from a side that had lost their last two home league games.
The Gunners announced before the match that their players and directors had agreed to donate their day's wages to Centrepoint.
They had been less than charitable down the years to Fulham, who had never won at Arsenal in more than a century of trying.
That wait looked set to continue when Nasri's spectacular opener put the home side ahead in the 14th minute.
Andrey Arshavin pounced on Aaron Hughes' error before feeding the France star, who sold two sublime dummies before lashing the ball into the top corner.
Nasri was already guilty of a glaring miss after more superb work by the rampant Arshavin, who was running the show two days after helping his native Russia win the right to host the 2018 World Cup.
The first chance of the game had fallen to the striker, his close-range volley blocked by Mark Schwarzer, who had looked certain to join Arsenal in January before signing a new contract with Fulham on Thursday.
Arshavin and Nasri continued to pull the strings - the latter tormenting recalled Fulham youngster Matthew Briggs, who was withdrawn for Chris Baird.
But Marouane Chamakh and Alex Song were both guilty of more profligate play that would come back to haunt the Gunners, whose offside trap was looking particularly suspect.
On the half-hour mark, Squillaci and Koscielny collided going for the same ball and Clint Dempsey took full advantage of the carnage to slide in Kamara, who sidefooted home.
Koscielny was in a bad way and was carried off on a stretcher to be replaced by Johan Djourou.
Both sides should have scored on the stroke of half-time, Chamakh powering a header straight at Schwarzer from Bacary Sagna's brilliant run and cross, and Kamara hitting the legs of Lukasz Fabianski after being played in behind by Dickson Etuhu.
Tomas Rosicky hooked a 52nd-minute volley wide as Arsenal tried to build some momentum after the restart.
Arshavin's dancing feet and near-post drive brought another good stop by Schwarzer but Fulham were refusing to be overawed and saw plenty of the ball themselves.
Etuhu sent a free header wide from Simon Davies' corner before Arsenal withdrew Rosicky for Robin van Persie.
The home fans' frustration grew when Song wasted all his good work outmuscling John Pantsil by blazing over the top.
Fulham were denied a shock lead in the 70th-minute when a corner was deflected to Zoltan Gera, whose header was cleared off the line.
Gera then sent a spectacular overhead kick wide before Kamara was sacrificed for Andy Johnson and Wilshere was withdrawn for Theo Walcott.
Arsenal's change paid off in spectacular fashion with 15 minutes remaining, a brilliant flowing move seeing Van Persie square for Nasri.
The Frenchman still had men to beat but did so with some unbelievable footwork, rounding Schwarzer and pirouetting to net from a tight angle.
The visitors proved they were far from beaten when Etuhu dragged narrowly wide minutes later but Chamakh shoulkd have killed them off when he sent a shot over on the turn.
Nasri looked to be struggling, signalling he wanted to come off, but Arsenal had used all their substitutions and he played on.
Fulham poured forward and the home defence was definitely creaking, with Gera's well-struck volley forcing a fine Fabianski save.
Eddie Johnson came on for Danny Murphy for the closing moments but Arsenal held on.Reuse content