Malik sealed the win -- and his ton -- in spectacular fashion, smashing a six off West Indies captain Jason Holder to wrap up victory with nearly seven overs to spare.
Malik's 101, which included two sixes and ten fours, was matched by an assured 81 from Mohammad Hafeez as Pakistan finished on 236 for four in reply to the home side's 233 for nine.
Hafeez completely dominated their partnership, his innings coming off 86 balls with two sixes and eight fours before a miscued sweep off Ashley Nurse found Veerasammy Permaul on the backward square-leg boundary.
Permaul, the left-arm spinner brought into the match at the expense of fast bowler Alzarri Joseph on a turning track, proved expensive while leg-spinner Devendra Bishoo also lacked potency in helpful conditions.
West Indies were indebted to Shai Hope (71) and Jason Mohammed (59) after their top-order once again crumbled.
Mohammed's excellent run of form in this Caribbean season continued with a fluent 59 off 64 balls with two sixes and five fours, his fourth half-century in six ODI innings. The pair put on 101 for the fourth wicket and lifted the home side from early discomfort to a degree of competitiveness.
However they lost vital wickets in the quest for quick runs over the final overs of the innings, managing just 29 over the last five in which Ahmed resorted to his faster bowlers to good effect.
Junaid Khan, who had accounted for Evin Lewis at the start of the innings, returned to separate the pair of Hope and Mohammed, having the latter caught at the wicket. Hope fell to Shadab Khan via a catch at long-on, although the leg-spinner endured the most expensive effort of his young international career, conceding 57 runs off eight overs.
Pakistan 236 for 4
(Malik 101*, Hafeez 81) beat West Indies 233 for 9
(Hope 71, Mohammed 59) by six wickets