Morikawa, who won the 2020 US PGA Championship on just his second major start, held his nerve superbly on the closing stretch to become the first player to win two different majors at their first attempt.
A closing 66 gave the 24-year-old a winning total of 15 under par and two-shot victory, with Spieth also returning a 66 and world number one Jon Rahm doing likewise to share third on 11 under with 54-hole leader Louis Oosthuizen.
Morikawa began the day a shot behind Oosthuizen, but, with the South African making a stuttering start, Morikawa followed six straight pars with birdies on the seventh, eighth and ninth to open up a three-shot lead over Spieth.
The former Open champion had fallen four behind with two early bogeys, but eagled the seventh and birdied the ninth to be out in 34 and emerge as Morikawa's biggest rival.
The gap remained three as Morikawa and Spieth traded birdies on the ninth and 10th respectively, before a brilliant par save from over the 10th green kept Morikawa in command.
Birdies from close range on the 13th and 14th saw Spieth cut his deficit to a single stroke, only for Morikawa to also take advantage of the par-five 14th - the easiest hole on the course over the week - to edge two in front once more.
A brilliant up and down from left of the 15th gave Morikawa some vital breathing space and with Spieth unable to birdie any of the last three holes he could enjoy completing the formalities of an impressive win.
Oosthuizen had been hoping to become the first wire-to-wire winner of the Open since Rory McIlroy in 2014, 11 years to the day since he lifted the Claret Jug at St Andrews.
But after dropping just his fourth shot of the week after missing the green with his approach to the fourth, Oosthuizen thinned his bunker shot on the par-five seventh into more sand to run up a costly six.
Oosthuizen almost made a spectacular hole-in-one when his tee shot on the difficult 11th clattered into the pin, and although the resulting birdie saw him close the gap to Morikawa to three, a bogey on the 13th effectively ended his chances.
Four-time major winner Brooks Koepka had set the early clubhouse target on eight under following a 65, with Scotland's Robert MacIntyre the leading British player on seven under after a 67.
Defending champion Shane Lowry finished in a tie for 12th as Olympic team-mate Rory McIlroy cut a disconsolate figure after a 71 containing four birdies, three bogeys and a double bogey on the 10th.
The 32-year-old, who has now gone seven years since claiming his last major title at Royal Liverpool, said: "There is a lot of birdies in there but a lot of bogeys too.
"I've made 17 birdies this week, which is more than enough to challenge to win this golf tournament. It's just I make too many mistakes, and that's the part that I need to try to get right.
"There is enough good stuff in there to contend at these golf tournaments, but I'm just not allowing myself to do that with some the mistakes I'm making."