The versatile defender was the unlikely hero as he fired in a well-controlled effort 22 minutes from time after a right-wing corner was diverted into his path.
The visitors had started brightly and could have avoided their exit from the competition if they had taken one of their early chances, but Alex Teixeira and Fred both wasted good openings.
At the other end Ashley Young was equally as guilty as he spurned two gilt-edged opportunities before United stepped it up a gear after the break.
The result means the Red Devils avoid a third straight home loss and leaves the Miners facing up to life in the Europa League after Bayer Leverkusen's triumph at Real Sociedad saw them take the runners-up spot.
PRE-MATCH: SIX CHANGES, VAN PERSIE ON THE BENCH - David Moyes made six changes to the side that lost 1-0 to Newcastle with Wayne Rooney returning from suspension to lead the line. Adnan Januzaj was selected to make his Champions League bow.
12' - SHAKHTAR CHANCE: Alex Teixeira rampages into space in the left-hand channel and drags a shot just past the far post. It should be 1-0 to the visitors.
34' - WHAT A MISS: Fred wastes a glorious chance with a woeful miscue from 12 yards out after Teixeira robbed Ferdinand on the left and raced at goal before cutting it back into the midfielder's path.
37' - JUST WIDE: Ashley Young gets in behind the Shakhtar defence but sends his lob inches past the post.
43' - WASTEFUL: Rooney puts it on a plate for Young who takes a touch and lashes well wide of the near post. Poor, poor play by the winger.
47' - WOODWORK: United fail to clear a left-wing corner and Yaroslav Rakitskiy sees his deflected effort clip the far post.
68' - GOAL: Man United 1-0 Shakhtar. Phil Jones smashes home the opener after a corner from the right was diverted into his path.
Manchester United have failed to score in just one of their last 15 Champions League home games.
Manchester Utd are unbeaten against Ukrainian clubs in the Champions League (W4 D2).
David De Gea has kept four clean sheets in his last four Champions League games.
Shakhtar Donetsk are winless in their six European games in England (D1 L5).
Shakhtar failed to score against English opposition in the Champions League for the first time in eight encounters.
Ryan Giggs is the 10th player aged 40+ (and the fifth outfield player) to feature in a Champions League match.
TALKING POINT: Crisis? What crisis? This was hardly vintage Man United and it is clear there are some real teething problems under Moyes. But a win is a win and securing top spot should see them avoid one of the big guns in the last 16. After back-to-back home league defeats it was vital to bounce back and an improved second-half showing was just about enough.
MAN OF THE MATCH
Phil Jones (Manchester United): A solid if unspectacular display in midfield saw him improve after the interval and cap his night with the all-important winner.
PLAYER RATINGS -
MANCHESTER UNITED: De Gea 6, Rafael 6, Ferdinand 5, Evans 6, Buttner 5, Jones 7, Giggs 5, Januzaj 6, Kagawa 6, Young 5, Rooney 6. Subs: Van Persie 6, Cleverley 6, Valencia 5.
SHAKHTAR DONETSK: Pyatov 6, Kucher 6, Shevchuk 6, Rakitskiy 6, Stepanenko 6, Fred 6, Douglas Costa 6, Alex Teixeira 6, Srna 6, Luiz Adriano 6, Taison 6. Subs: Bernard 6, Fernando 6, Ferreyra 5.