A bizarre own goal proved the difference in a tight contest at Turf Moor.
A combination of Kieran Trippier and Tom Heaton, following a close-range effort from Jack Cork, gave Swansea City all three points midway through the second half.
Burnley kept probing throughout the encounter, but found goalkeeper Łukasz Fabiański in inspired form for the visitors.
Despite the defeat, the Clarets remain in the Premier League’s bottom three solely on inferior goal difference.
Sean Dyche named the same side that held Premier League leaders Chelsea to a draw at Stamford Bridge last weekend.
Meanwhile, manager Garry Monk made one change to the Swansea team that beat Manchester United in their previous outing with Tom Carroll replacing injured Gylfi Sigurðsson.
Burnley had the first effort on goal when George Boyd forced a routine stop from Fabiański after just four minutes.
But the game got off to a rather quiet start with neither team genuinely threatening the opposition goal in the opening quarter of the match.
Things finally livened up soon after.
On 23 minutes, the ball dropped to Ashley Barnes inside the box, but Fabiański was quickly off his line to deny the striker after his left-foot shot on the turn.
Moments later, Swansea had their big opportunity.
Jonjo Shelvey’s brilliant ball over the top saw Wayne Routledge one-on-one against Heaton and the winger managed to lift the ball over the advancing Burnley goalkeeper – but wide of
In response, Michael Kightly had an effort blocked after he dribbled his way through to the penalty area on the half-hour mark.
All in all, the visitors defended solidly with former Clarets loanee Cork sat deep in front of the back four to offer extra protection against Burnley’s strike force.
At the other end – after another inch-perfect ball by Shelvey – Bafétimbi Gomis timed his run and controlled the ball perfectly, but couldn’t keep his shot down with only the big figure of
Heaton to beat.
And in first-half stoppage time Shelvey attempted to take the matter into his own hands with his effort curling narrowly the wrong side of the post.
After the restart, it was Burnley who fashioned the next goalscoring opportunity.
Kightly was too strong for Kyle Naughton before he broke into the penalty area close to the by-line and saw another effort blocked with Fabiański again making himself big to deny Barnes on the follow-up.
Amidst the goalmouth scramble, the Clarets also had a strong penalty appeal waved away by the referee.
And Barnes kept probing, as his superb strike on the turn missed the target by a whisker following Kieran Trippier’s ball into the box on the hour mark.
Shortly afterwards, Swansea reverted to a 4-2-3-1 formation with Jefferson Montero introduced into the field of play in place of Carroll.
And it was the visitors who went in front on 65 minutes.
Shelvey’s out-swinging corner was flicked on by Gomis at the near post before Heaton produced a stunning stop to turn Cork’s close-range effort onto the crossbar.
However, the ball dropped back into the path of Cork whose follow-up was eventually forced over the line by a combination of Trippier and Heaton.
Burnley responded by bringing on Sam Vokes with a quarter of an hour left on the clock.
Barnes then forced another save from Fabiański with a well-hit strike from outside the box as the Claret searched for an equaliser.
And on 84 minutes, Boyd sent in an inviting ball in with Vokes getting away from his marker at the near post only to be denied one more time by a brilliant, reactive stop from the Swansea goalkeeper.
Right at the end, Lukas Jutkiewicz replaced Barnes in the last throw of the dice for Burnley.
But the visitors held on to their narrow lead to claim all three points.
Burnley: Heaton; Trippier, Keane, Shackell, Mee; Boyd, Arfield, Jones, Kightly (Vokes 75); Ings, Barnes (Jutkiewicz 90).
Subs not used: Gilks, Duff, Ward, Reid, Wallace.
Swansea: Fabiański; Naughton, Fernández, Williams, Taylor; Cork; Ki, Shelvey; Carroll (Montero 61); Gomis (Oliveira 90+2), Routledge (Amat 90).
Subs not used: Tremmel, Rangel, Britton, Emnes.
Goals: Heaton 65-own goal
Referee: Jonathan Moss
Attendance: 17,388 (1,123)