The Swans ended their winless run of four games as goals from Scott Sinclair and sub Danny Graham - and a penalty save by Michel Vorm - saw off Fulham at the Liberty.
After a goal-less first half the Swans finally turned their possession into a lead as Sinclair's effort deflected off Clint Dempsey and past Mark Schwarzer for the winger's first goal in open play this season.
The visitors had a golden opportunity to level from the spot after Jazz Richards was harshly adjudged to have fouled sub Karim Frei in the box. But Vorm denied Dempsey from the spot with a fine save in the 86th minute.
Then it was left to Graham to slot home Mark Gower's sublime low corner to put the icing on the cake for Brendan Rodgers's side.
The Swans made three changes to the side that lost at Blackburn.
Steven Caulker was back from injury and he returned to the starting XI in place of captain Garry Monk, which meant Ashley Williams led the side.
Wayne Routledge also started as his impressive performance off the bench at Ewood Park saw him picked ahead of Nathan Dyer.
The final change was enforced by Joe Allen's absence as he served a one-match ban. Luke Moore, a scorer at Blackburn the previous weekend, was given a chance to impress as he played behind Leroy Lita - the other scorer last time out - who started ahead of the fit-again Danny Graham.
Jazz Richards started again at right-back as Angel Rangel was still unavailable due to the ankle injury he sustained against Aston Villa.
Fulham were without influential midfielder Danny Murphy, who injured himself in Monday's win over Liverpool, while Bobby Zamora was also ruled out. Former Wales international Simon Davies made his return after being sidelined through injury.
Swans: Michel Vorm, Jazz Richards, Steven Caulker, Ashley Williams (capt), Neil Taylor, Leon Britton, Mark Gower, Luke Moore (Kemy Agustien, 69), Wayne Routledge (Nathan Dyer, 89), Scott Sinclair, Leroy Lita (Danny Graham, 76).
Subs: Gerhard Tremmel, Fede Bessone, Garry Monk, Stephen Dobbie.
Fulham: Mark Schwarzer, Stephen Kelly, John Arne Riise, Brede Hangeland (capt), Andrew Johnson, Bryan Ruiz, Philippe Senderos, Dickson Etuhu, Clint Dempsey, Simon Davies (Orlando Sa, 79), Moussa Dembele (Karim Frei, 78).
Subs: Neil Etheridge, Marcel Gecov, Bjorn Helge Riise, Aaron Hughes, Matthew Briggs.
Referee: J. Moss
The Swans started positively with Leroy Lita heading Mark Gower's cross wide after eight minutes while Scott Sinclair's 20-yard free-kick deflected off Andrew Johnson and out for a corner, which Ashley Williams headed over from eight yards.
The Swans were dominating possession and territory and Luke Moore came close to giving the hosts the advantage after 22 minutes as his 20-yard shot beat Mark Schwarzer but not the woodwork as it bounced off the crossbar.
Leroy Lita then had a huge appeal for a penalty waved away despite appearing to be pulled down in the box from Gower's corner.
The home surge continued, Sinclair twisting and turning in the box before shooting low at Schwarzer and then Wayne Routledge's effort was easily collected by the keeper after Neil Taylor's fine cross.
But that was the end of the action in the first half as the Swans headed into the break with the majority of play but with no advantage.
Half-time: Swans 0 Fulham 0
Again, the Swans started well with Lita driving his low effort wide before the striker collided with Schwarzer, which left the keeper needing treatment.
Then, the goal fiinally arrived. Gower's corner was punched out by Schwarzer to Routledge, whose volley bounced to Sinclair. The winger's shot on the turn deflected off Clint Dempsey and past the wrongfooted Schwarzer with 56 minutes on the clock.
The home crowd were still celebrating while Fulham went close to equalising. The visitors worked a fine passing move and Bryan Ruiz found himself in on goal with only Michel Vorm to beat. But the keeper was up to the task, denying Ruiz from 10 yards with a superb reflex save.
Vorm was again up to the task a few minutes later, getting down low to gather Dempsey's low effort from 25 yards.
The visitors continued to add pressure, John Arne Riise seeing his thunderous free-kick cannon off the support holding the netting, before Vorm again came to the rescue as he denied the onrushing Johnson in the box.
Brendan responded by replacing Moore with Kemy Agustien, and the substitute had an immediate impact as his sidefooted effort from 25 yards bounced off the far post.
Another change followed with Danny Graham replacing Lita for the last 15 minutes.
The striker had a golden chance to double the lead as Agustien sent him through in on goal. Graham turned inside Philippe Senderos but his weak effort was easily collected by Schwarzer.
Sinclair then saw his 25-yard free-kick fly just wide while Fulham had a decent chance to equalise soon after but sub Karim Frei could fire straight at Vorm.
An even better was to arrive for Fulham. Frei collected possession on the left wing and cut inside before going down under a challenge in the box from Jazz Richards.
It seemed harsh, but the onus was now on Dempsey to beat Vorm from 12 yards.
The Penalty Killer lived up to his nickname, diving to his right to palm the American's spotkick wide - his second penalty save at the Liberty this season.
Nathan Dyer then replaced Routledge in the 90th minute, but five minutes of added on time was to follow.
But it was all over in the first minute of the five - Dyer winning a corner which Gower drove in low and Graham sidefooted home.
It was a bizarre five period, going from almost conceding to adding another goal, but it was no more than the Swans deserved.
There was still time for Fulham to push for a consolation goal, though, but sub Orlando Sa saw his header again saved by man-of-the-match Vorm.
Another cleansheet at the Liberty, and a welcomed win too as the Swans ended their winless streak.