The Hornets let a two-goal lead slip as they fell to a third successive defeat in agonising fashion on Merseyside.
After a goalless opening 45 minutes, Richarlison broke the deadlock fewer than 30 seconds after the restart, and the Hornets were seemingly in control when they doubled their lead through Christian Kabasele’s header midway through the second-half.
But an injury to goalkeeper Heurelho Gomes seemed to turn the tide in Everton’s favour, particularly once Oumar Niasse pegged one back and substitute Dominic Calvert-Lewin found a leveller with quarter-of-an-hour to go.
With an astonishing 12 minutes added on there was drama aplenty still to come. First Leighton Baines converted from the penalty spot to edge the hosts in front, and then right at the death Tom Cleverley dragged another penalty wide and the Hornets’ late lifeline had come and gone.
Marco Silva named two changes to the side which started against Stoke last weekend. Will Hughes – making his first Premier League start – and Andre Gray came in for Etienne Capoue and the suspended Troy Deeney.
It was a cagey opening at Goodison Park with both sides looking to play on the break, but Everton should arguably have gone ahead when an unmarked Baines drew a close-range save from Gomes after Wayne Rooney’s square ball.
Watford were looking to use the flanks and their first chance of note came via a Kiko Femenia cross after clever play from Hughes, which Gray could only drag wide just before the half-hour.
Gray set Richarlison racing away late in the half and the Brazilian’s pace took him round the on-rushing Jordan Pickford. With the angle tightening and some close attention from Baines, the attacker’s shot landed just the wrong side of the side-netting.
The Hornets were the side on the front-foot during the half’s latter stages, and they needed just half-a-minute to take the lead following the restart.
Gray teed up Richarlison with a delicate chip and the Brazilian controlled, rounded Pickford before finding the near bottom corner with his right foot – his fourth goal of the season, all of which coming away from home.
It was two with little over 25 minutes to go. Kabasele rose highest to meet Jose Holebas’ corner with a downwards header which nestled into the back of the net. Surely game over?
Everton had other ideas. Gomes had already taken what looked a heavy blow to the head whilst denying the hosts with a superb double-save and Orestis Karnezis had been introduced for his Watford debut.
The Greek international keeper rushed off his line to meet a long ball forward but Everton front-man Niasse took it past him and tapped home. Sixty-seven minutes gone, and a lifeline for the hosts.
They were level before too long, Calvert-Lewin nodding home at the far post from an Everton corner, and suddenly the Toffees looked the more likely victors.
Watford felt hard done by when referee Graham Scott awarded a last-minute penalty. Holebas appeared to slip in the box, taking Everton sub Aaron Lennon with him, and Baines duly stepped up to convert the spot-kick.
Deep into 12 minutes’ additional time, it was Watford’s turn. Pickford upended Richarlison and up stepped Cleverley. The Watford midfielder, so impressive thus far this season, sent the penalty the wrong side of the post, and with it went hopes of another dramatic late Hornets goal.
HORNETS | Gomes (C) (GK) (Karnezis, 59); Femenía, Kabasele (Mariappa, 79), Britos, Holebas; Cleverley, Doucouré; Carrillo, Hughes (Okaka, 90+4), Richarlison; Gray.
Subs not used | Janmaat, Watson, Capoue, Sinclair.
TOFFEES | Pickford (GK); Kenny, Keane, Jagielka (C), Baines; Gueye, Baningime (Lookman, 55); Davies, Sigurdsson (Lennon, 85), Rooney (Calvert-Lewin, 68); Niasse.
Subs not used | Robles (GK), Besic, Williams, Holgate.