Watford took the lead through Andre Gray, pouncing on a loose ball in the penalty area to score his first goal in Watford colours.
Tammy Abraham came off the bench at half-time, and scored the equaliser off the rebound from Wilfried Bony's effort.
Swansea dominated the second half, but it was Richarlison who capitalised on an error to finish past the goalkeeper.
Swansea out of rhythm
Swansea lined up in a 5-3-2, with Bony coming in for Abraham to make his first Premier League start this season and Leroy Fer in for Renato Sanches, presumably to add more bite into the midfield.
The Welsh side used a back four at home to Newcastle United, which means they could be paying Watford more respect than they did Newcastle after an impressive start by the Hornets.
Watford had the first chance of the game, Kiko Femenia found space down the right, pulled the ball back for Andre Gray but his shot was well blocked by Mike van der Hoorn.
The away side started brighter, as Swansea dwelled on the ball on several occasions while Watford were passing with purpose and were able to get the front three involved.
Hornets take deserved lead
Gray didn’t waste his second chance though, capitalising on Bony losing the ball in midfield before Andre Carrillo’s cross was intercepted by Sam Clucas straight to Watford’s record signing to blast the ball in the back of the net.
The goal is Gray’s first since signing for Watford and just his third goal in his last 16 league appearances.
Swansea almost hit back immediately, as Fer met the corner but his header was tipped round the post by Heurelho Gomes and Federico Fernandez was unable to follow up the strike.
However the hosts could barely string two passes together, and Bony was not able to hold the ball up like Abraham had in the first five fixtures meaning they struggled to build any attacks.
Swansea then had their first shot on goal, as Bony attacked Martin Olsson’s cross but Watford defended well and put the Ivorian off enough to see his tame effort easily saved by Gomes.
Swansea switched off as Alfie Mawson’s backpass was intercepted by Gray but his shot from a low angle went just wide of Lukasz Fabianski’s goal.
Tom Carroll delivered a fantastic free-kick but Bony and van der Hoorn were somehow unable to make contact a few yards from goal to level the score a few minutes before half time.
Paul Clement made positive changes
Paul Clement made two changes at half time, Abraham and Roque Mesa replacing Clucas and van der Hoorn as Swansea moved to a diamond system.
Abraham provided a much needed option up front, and Mesa was able to set a tempo in midfield, and immediately Swansea looked a much better side.
Swansea upped the pressure, and that resulted in Abraham scoring the equaliser from a few yards out.
It was Swansea’s first home goal of the season, as Ayew’s cross found its way to Bony, his effort palmed out by Gomes but only to Abraham as he stabbed home.
It was a polar opposite to the Swansea of the first half, as they continued to keep possession well and press high after the goal.
There for the taking
Abraham and Bony each had a bite of the cherry from Carroll’s cross but Watford defended superbly well to deny them a second goal.
Carroll put in a superb delivery time and time again from set-pieces, but his teammates were unable to latch on to them to take the lead.
As the game headed into the final 15 minutes, the game was perfectly poised for someone to claim all three points. Swansea had the better second half but Watford remained a threat.
Troy Deeney had an effort that was smartly saved by Fabianski as both sides pushed for a winner.
It was Watford who were able to score that winner, as Richarlison capitalises on Mesa's loose pass, gets past Mawson and was able to finish past Fabianski.
The goal came against the run of play, but it was the Brazilian who took his goal well at the death.
The result sees Watford win their first three away matches in the top-flight for the first time in their history.
On the other side, Swansea have now lost their first three home games in the league for the first time.