Manchester United guaranteed a Premier League top-four finish and ensured rivals Manchester City must wait to be crowned champions as they came from behind to beat Aston Villa at Villa Park.
A win for Villa would have sealed the title for leaders Man City who lost 2-1 to Chelsea on Saturday and Bertrand Traore’s emphatic finish into the top corner midway through the first half threatened to do just that.
Emiliano Martinez was equal to attempts from Greenwood and Marcus Rashford as United struggled to respond initially, while Dean Henderson kept out Ollie Watkins’ strike to deny Villa a second before half-time.
United levelled shortly after the restart when Fernandes calmly slotted in a penalty after Douglas Luiz needlessly fouled Paul Pogba in the box.
Mason Greenwood then completed a turnaround for Solskjaer’s men with a low strike straight into the bottom corner just four minutes later to give United the lead.
Aston Villa piled on pressure as they looked for an equaliser and could have gotten their own penalty when Greenwood appeared to have handled the ball, but the claims were dismissed by a VAR check.
The visitors successfully resisted late Villa pressure despite the loss of captain Harry Maguire to injury before Cavani confirmed victory in the closing stages.
In a frantic finale, Villa forward Watkins also received a red card for a second booking for simulation when under pressure from goalkeeper Henderson.
United are 10 points behind champions-elect City but will have the chance to move within four points as they face Leicester and Liverpool before the leaders next play.