Chasing a huge total of 309, West Indies were all out for 172 with six full overs to spare.
Denesh Ramdin top scored with 37, followed by Carlos Braithwaite (32).
For Pakistan, slow left-arm spinner Mohammad Nawaz claimed three wickets for 40 and left-arm fast bowler Wahab Riaz took two for 28.
Earlier, Babar Azam hit his third consecutive hundred while skipper Azhar Ali returned to form with a century as Pakistan punished West Indies in the third ODI in Abu Dhabi on Wednesday.
Azam became just the seventh batsman in one-day cricket to smash hundreds in three consecutive matches with a superb 106-ball 117 to lead Pakistan to 308-6 after Azhar won the toss and decided to bat on a flat Sheikh Zayed Stadium pitch.
Azam was finally bowled by Kieron Pollard in the 46th over after hitting eight boundaries and a six in another dominating exhibition of batting.
Azhar, who failed in the first two games with a first-ball duck and nine, scored a 109-ball 101 with eight boundaries and a six. He and fellow opener Sharjeel Khan (38) put Pakistan — leading the three-match series 2-0 — on track for a big total and a whitewash with a solid 85-run start in 14.1 overs as West Indies’ new-ball attack struggled.
Left-arm spinner Sulieman Benn provided West Indies with the first breakthrough, in his second over, when Sharjeel holed out at long-on after hitting five boundaries off 41 balls.
Azhar and Azam added 147 for the second wicket to frustrate the West Indian bowling before the skipper was bowled by Jason Holder in the 39th over.
Sarfraz Ahmed made 24 not out as Pakistan managed 96 runs in the last 15 overs.
Fast-rising star Azam is only the third batsmen from Pakistan and seventh in the world to notch three hundreds in as many matches. Sri Lanka’s Kumar Sangakkara holds the record with four centuries in as many games.
Pakistan’s Zaheer Abbas and Saeed Anwar, South Africa’s Herschelle Gibbs, AB de Villiers and Quinton de Kock, and New Zealand’s Ross Taylor are others to achieve the milestone.