Shaun Maloney rescued Aston Villa with an opportunist 90th minute winning goal to give the Midlands club their first win of the season.
It had previously appeared as if the game would end in the sixth successive draw between these two teams, but Ashley Young, who played a major part in the 51st minute equaliser which deflected off the unlucky Zat Knight, set up the Scot to grab the winner.
It was a hard-earned victory for Villa after ten-man Fulham had Chris Baird sent off for a second yellow card in the second half when substitute Luke Moore made a major impact.
A relieved Aston Villa manager Martin O'Neill was also banished to the stand for the second half following comments made to referee Steve Bennett at the interval.
O'Neill was incensed by some of the decisions and also frustrated by Villa's indifferent performance in the opening 45 minutes.
With O'Neill sitting in the press box, Villa produced a more lively second-half performance, but there were quite a few shortcomings in a side which the manager thought would make a bigger impact.
Poor Fulham slipped to their third 2-1 defeat after leading in every game.
It was a match in which Villa were often put out of their stride and there could have been a story book return for Steven Davis following his £6million move from Villa during the summer.
The Northern Irishman cleverly worked an opening for himself in the fifth minute only for Olof Mellberg to make a timely interception.
But it was a warning that Villa failed to heed as only a couple of minutes later, Diomansy Kamara, making his first start for Fulham since his transfer from West Bromwich Albion, combined with Davis to set up Clint Dempsey for the American to fire his shot past Scott Carson.
Villa often threatened danger but could not capitalise upon the openings.
John Carew was often too sluggish, while Gabby Agbonlahor made too many isolated runs only to run smack into Fulham's defensive wall.
Kamara was a threat breaking through but David Healy's goal flair deserted him as he was effectively shackled by Martin Laursen and was substituted in the second half.
Villa's only real chance of equalising in the first half occurred when Carew flashed a header from Gareth Barry's corner against the angle of the bar and post.
Fulham themselves were denied a penalty when Laursen handled a close-range effort from Kamara.
There was, however, a distinct improvement when Moore took over from Stiliyan Petrov at the break as he immediately livened up the attack with a shot which went just wide.
But Villa had a let-off when Kamara hit the bar only for Young's 51st minute effort to deflect off Knight and beat Kasey Keller for the equaliser.
Villa's pressure was in sharp contrast to their first-half display as they bombarded Fulham.
In the 69th minute Baird, who had been booked in the first half, blocked Young's advance and collected a second yellow and red card.
Fulham's ten men defended heroically to keep out the Villa attack until Young cleverly created the opening from which Maloney fired home the winner to the relief of the constrained O'Neill.