Romelu Lukaku opened the scoring with a header – his second goal in as many games – against the team he played for during the 2012-13 season.
Jesse Lingard doubled United’s lead before the break with a shot that deflected off Albion’s Ahmed Hegazi.
The Red Devils appeared to be heading for a comfortable win until Albion substitute Gareth Barry poked home from close range with 13 minutes left.
Baggies boss Alan Pardew’s two other substitutes almost combined for an equaliser – Jay Rodriguez shooting wide from a Chris Brunt cross.
But, despite finishing strongly, the Baggies could not add to their first goal in four games under Pardew, remain second from bottom and are on a club record run of 17 games without a win.
“Every match we try to win,” said Mourinho. “I know the questions are always coming in the same direction and I keep saying the same.
“Last match in the Premier League, Watford at Old Trafford, mid-May… until then, every match we go.”
Mourinho said on WednesdayÂ he would be on holidayÂ if he felt the chance of catching City had gone, and his team must keep grinding out the wins while hoping their local rivals falter.
“We don’t want to go on holidays,” he added. “We want to play until the last match.”