Manchester United have gone top of the Premier League for the time being after Troy Deeney sent a Bastian Schweinsteiger effort into his own net in the closing stages.
After the Hornets were forced to weather initial pressure from Louis van Gaal's side, they nearly fell behind when Allan Nyom mistimed his clearance and saw the ball land on top of Heurelho Gomes's net.
On 11 minutes, United finally broke the deadlock after a cross from Ander Herrera on the right flank found Memphis Depay and the Dutchman's side-footed volley flew past the Brazilian keeper.
Herrera would limp out of the game minutes later, but his side were lucky to stay ahead when Ashley Young lost possession to Deeney before Odion Ighalo decided to shoot rather than cross and ultimately saw his effort drift wide.
More sloppy play from Quique Flores's team gifted Morgan Schneiderlin with a chance to double United's lead, with Etienne Capoue blazing a shot over the bar before the break at the other end.
Rather than tighten up in defence, Watford continued to gift United chances after the break and, once Capoue ceded possession to Depay, the Dutchman picked out Jesse Lingard, whose shot was tipped away by Gomes.
However, the Hornets came close to an equaliser when Deeney's shot forced David de Gea to tip the ball over the crossbar.
That chance appeared to bring Watford to life in the latter stages as first Capoue's strike was blocked by Chris Smalling, before Almen Abdi was turned around the post by De Gea.
Flores's men looked to have earned a draw when Marcus Rojo brought down Ighalo in the penalty area and Deeney's spot kick saw United concede for the first time in more than 10 hours.
However, as the game entered added-on time, Schweinsteiger's shot was diverted into his own net by the Hornets skipper, handing the win to the visitors.