United manager David Moyes endured a frustrating evening against the club he quit in the summer as left back Oviedo slotted home at the far post in the 86th minute after Romelu Lukaku flashed a deflected shot across the six-yard box.
Everton fully deserved its first win at United in 21 years after overrunning the champions at times, even if the hosts were unlucky to see Wayne Rooney and Danny Welbeck hit efforts against the goal frame in an end-to-end game.
United’s 12-game unbeaten run came to an end, leaving Moyes’ team 12 points behind leader Arsenal on a night all of their chief title rivals won.
Moyes was roundly jeered by Everton’s travelling support despite his 11 years of service at Goodison Park, but that will be the least of his worries after the latest setback in his brief tenure at United.
The hosts knew there was no room for error after slipping further back from Arsenal with back-to-back draws with Cardiff and Tottenham, but Everton was always going to provide a stern test after starting the season excellently under Moyes’ successor, Roberto Martinez. And so it proved.
United went closest when Rooney’s deflected shot dribbled against the post in the 29th, while the 40-year-old Ryan Giggs also glanced a header just wide, but its goalkeeper, David de Gea, had to be alert to save well from Kevin Mirallas and Lukaku in a lively first half.
Again missing injured defensive midfielder Michael Carrick, United’s defense was often left exposed by Everton’s quick counter-attacks and the visitors had just as much joy after the break. Rooney became so frustrated at a lack of service that he lashed out at Phil Jagielka with his elbow, earning the England striker a booking.
Substitute Gerard Deulofeu squandered a brilliant chance for Everton when he was allowed to run unchecked into the area, only to sidefoot his shot at De Gea.
United was still dangerous at the other end, though, and from a Nani corner, Patrice Evra brought a fine reaction save from Tim Howard before Welbeck headed the rebound against the crossbar.
However, Oviedo, filling in for the injured Leighton Baines, had the final say when he made no mistake from close range to add to the goal he scored in the 4-0 win over Stoke on Saturday.
It consigned United to a fourth defeat in 14 games this campaign.