Clint Dempsey capped a storming Fulham recovery as Mark Hughes' shell-shocked Manchester City were forced to settle for their third straight Barclays Premier League draw.
Hughes' men were cruising home when Martin Petrov fired home their second on the hour, seven minutes after Joleon Lescott had knocked home the opener.
But eight minutes later the visitors were back on level terms when first Damien Duff then Dempsey fired past Shay Given to lend another twist to an action-packed game.
Fulham's Clinton Dempsey (right) celebrates with Damien Duff
Comeback kings: Fulham's Clint Dempsey (right) celebrates with Damien Duff
It could have been worse for City as Bobby Zamora brought a late save out of Given as memories inevitably flicked back to Fulham's 'great escape' from relegation with a 3-2 win at Eastlands in 2008.
Earlier, Micah Richards had had a first-half effort ruled out while Zamora and Diomansy Kamara were both guilty of glaring misses as the action swung from end to end.
City had brought back Craig Bellamy after missing out last week with a groin strain but Petrov had the first chance for the home side when he shot over the bar on 12 minutes.
Manchester City's Joleon Lescott scores his side's first goal
The opener: Joleon Lescott (centre) smashes in Manchester City's first goal
Even in the early stages the visitors showed plenty of threat on the counter-attack with Zamora looking lively and a Dempsey run reined in by an alert Richards.
Tevez came close on 17 minutes when Adebayor laid back the ball to the edge of the box and the Argentinian scuffed a low shot which bobbled just past Mark Schwarzer's left post.
But one minute later the home side were almost caught out when Kamara burst clean through - only to seem so surprised by the lack of an offside flag that he dribbled his first touch to Given.
Manchester City's Joleon Lescott (left) celebrates with team mate Emmanuel Adebayor
Congratulations: Joleon Lescott (left) and Emmanual Adebayor celebrate
City reacted well, Adebayor seeing penalty claims turned down after tumbling under Kelly's challenge, Kolo Toure heading over and Nigel De Jong forcing a diving save from Schwarzer.
But the visitors were intent on building on their fine recent record at City, with Jonathan Greening serving a timely reminder by shooting inches wide on the half-hour.
Tevez came closest for the home side in the 33rd minute when he rose unchallenged to meet Petrov's corner from the right but flashed his header onto the top of the net.
Carlos Tevez (left) is tackled by Fulham's Brede Hangeland
Hide and seek: Carlos Tevez (left) is tackled by Fulham's Norwegian centre-back Brede Hangeland
Adebayor also missed by inches four minutes from the break and moments later Richards headed home a Petrov corner - only for referee Kevin Friend to blow for a foul by Barry on Chris Baird.
Zamora was guilty of one of the misses of the season on 47 minutes when Dempsey's initial shot was parried by Given and the striker somehow screwed the rebound over the bar from six yards.
City responded by going in front in the 53rd minute when Barry nudged a Bellamy corner across to Adebayor and his weak shot was helped over the line by Lescott.
When City grabbed their second on the hour it seemed like plain sailing, Bridge feeding Petrov from the right and the midfielder curling an excellent effort past Schwarzer.
But Roy Hodgson's men were far from sunk and they struck back just two minutes later when Zamora chested down a ball from Stephen Kelly and Duff shot home from the edge of the box.
A remarkable game took its further bizarre twist in the 67th minute when Dempsey fired Fulham level after finding space to meet Greening's free-kick in the box.
Martin Petrov celebrates his goal against Fulham
Two-nil: Martin Petrov celebrates his second-half strike at Eastlands
Tempers flared in the 70th minute when Dempsey fell on the edge of the City box but referee Kevin Friend waved play-on and sub Shaun Wright-Phillips streaked up-field and force a save from Schwarzer.
For a time it seemed Fulham were set to repeat their comeback heroics of 2008 with Zamora shooting just wide then bringing another save from Given.
City ended the game looking more likely with Barry heading just wide, but even five extra minutes of injury time could not provide Hughes with the win he desperately wanted.