Alejandro Garnacho came off the bench to score a stoppage-time winner as Manchester United signed off for the World Cup break with a dramatic 2-1 win at Fulham on Sunday.

Erik ten Hag's team hit the front through Christian Eriksen's first United goal early on, but they looked set to be denied by their former winger Dan James when he levelled within two minutes of entering the fray.

Fulham appeared the more likely winners from there as United relied on a string of saves from David de Gea, but Garnacho slotted home three minutes into stoppage time to stun Craven Cottage.

The 18-year-old's composed finish lifted United to within three points of the Premier League's top four, ensuring the Red Devils entered the six-week hiatus in positive mood.

De Gea saved from Carlos Vinicius as Fulham threatened early on, but United went ahead after 14 minutes when Bruno Fernandes crossed for Eriksen, who steered home from close range.

Though Fulham continued to enjoy long spells of possession, Anthony Martial missed two chances to double United's lead before the break, forcing a one-on-one save from Bernd Leno before nodding Luke Shaw's cross over.

Eriksen then stabbed narrowly wide as half-time approached, before De Gea produced reflex saves to deny Vinicius and Tim Ream as Fulham stepped up their search for a leveller after the break.

However, the Spaniard's resistance was finally broken after 61 minutes, with Fulham substitute James pouncing on Tom Cairney's cross to poke home a deserved equaliser.

United then spent long periods pinned back as Fulham continued to press, but there was to be one final twist as Garnacho raced onto Eriksen's pass before side-footing beyond Leno, breaking Fulham hearts at the last.