Swansea City 2 Fulham 0
Deflected second-half strikes from Jonjo Shelvey and Chico Flores condemned Fulham to their fourth defeat in five Premier League games.
During an even first half, Brede Hangeland headed over from close range when unmarked while Shelvey rattled the bar from just outside the box.
But Swansea stepped up through the gears after the break and took control, although there was an element of fortune about both of their goals.
Shelvey’s drive took touches off two Fulham players on its way to beating Maarten Stekelenburg, while Flores’s header from Jonathan de Guzman’s free-kick deflected off Dimitar Berbatov.
But Fulham can have no cause for complaint about the result after a disappointing second-half display.
It could have been so different had Hangeland not wasted a golden opportunity midway through the first half.
The big centre-back found himself unmarked from Kieran Richardson’s free-kick but nodded over from close range.
Ashkan Dejagah later sent a header too close to Swansea keeper Gerhard Tremmel after Alex Kacaniklic’s fine cross.
Five minutes before half-time, Shelvey sent a curling effort smashing off the Fulham crossbar with Stekelenburg beaten and the Whites keeper kept out Bony’s header.
Despite Fulham fielding an entirely fresh starting XI from that which played against Sheffield United in the FA Cup on Sunday, it was Swansea who looked much the brighter and sharper after the break.
Flores had a header clawed away by Stekelenburg, who also saved from De Guzman.
The goal Swansea threatened came just after the hour mark, with Fulham again guilty of not closing players down.
Shelvey was teed-up by Wilfried Bony and his effort hit both Steve off Sidwell and Brede Hangeland before nestling in the Fulham net.
De Guzman produced a terrific save from Stekelenburg but it was merely a stay of execution as Flores doubled the lead a few minutes later.
Fulham (4-2-3-1):Stekelenburg; Riether, Hangeland, Burn, Richardson; Parker, Sidwell; Dejagah (Bent 59), Dempsey (Duff 71), Kacaniklic; Berbatov (Tankovic 83).
Subs not used: Stockdale, Hughes, Christensen, Rodallega.