After back-to-back losses to Arsenal and Istanbul Basaksehir, Saturday's Premier League clash at Goodison Park was viewed by some as a must-win match for Solskjaer amid increasing speculation over his future.
Things looked worrying for the Red Devils boss when Bernard put Carlo Ancelotti's side ahead, but Fernandes scored twice before half-time and Cavani struck at the death to deliver three valuable points.
Anthony Martial, back from a three-game domestic suspension, dragged a shot wide from a promising position as United sought a positive start.
The visitors were behind 19 minutes in, though, as Bernard squeezed an effort into the bottom-left corner through Aaron Wan-Bissaka's legs after Dominic Calvert-Lewin had helped on Jordan Pickford's long kick.
Fernandes equalised in the previous meeting at this ground and he drew United level again, powering a header beyond Pickford after running into the box to meet Luke Shaw's delivery.
The Portugal international then put his side ahead, his cross at the end of a 20-pass sequence going in off the right-hand post after Marcus Rashford had tried to glance it in.
United captain Harry Maguire wanted a penalty when Pickford and Michael Keane clashed with him after the Everton goalkeeper had dropped the ball, but neither the officials on the pitch nor those using VAR agreed.
Rashford smashed another strike at Pickford as United failed to find a third goal on the break, although they kept the home side at bay despite the Toffees controlling possession in the second half.
2 - The two longest passing sequences leading to a goal in the Premier League so far this season have both been scored by Manchester United; Aaron Wan-Bissaka against Newcastle (21 passes) and Bruno Fernandes' equaliser today against Everton (20 passes). Building. #EVEMNU pic.twitter.com/Z6HrIyMnO6— OptaJoe (@OptaJoe) November 7, 2020
As Everton poured forward in injury time, Maguire's interception sent Fernandes away on the break, and he waited before teeing up Cavani to sweep home.
What does it mean? Solskjaer keeps wolves from the door
Defeat here was highly unlikely to spell an immediate end to Solskjaer's time in charge, but this was an important result to quieten some of the recent mounting criticism.
The fact it came against a side unbeaten in three games against United, at a ground where they lost 4-0 in April last year in their worst display under the Norwegian, made this performance more impressive.
United are on 10 points from seven matches and three behind Everton, whose manager has now suffered three consecutive league defeats for the first time since November 2006, when he was at AC Milan.
Fernandes leads from the front
No player has managed as many goal involvements as Fernandes (15) in their first 10 away matches in the Premier League.
Beyond his double and assist here, he was an important presence in pressing the Everton midfield, winning three tackles – more than anyone else in red.
James kept quiet
James Rodriguez struggled to influence matters from the Everton right, creating no chances and attempting no shots before being replaced by Cenk Tosun.