The 25-year-old Jamaican was unbeaten on 100 to help his team recover from an early wobble and added 141 runs for the third wicket with Shivnarine Chanderpaul (60) as the tourists achieved the target with 15.1 overs to spare on Wednesday.
Yasir Hameed top-scored with 71 as a depleted Pakistan team managed 209 in 49.5 overs after winning the toss at the Multan Stadium.
The West Indies, trailing 2-1, need to win the fifth and final match in Karachi on Saturday to square the series.
Samuels hit Abdul Razzaq for his 17th boundary to reach his second one-day hundred. It also included a six and came off 99 balls.
Paceman Rana Naved-ul-Hasan had given Pakistan a good start by bowling Chris Gayle (nine) and trapping Lendl Simmons leg-before for a first ball duck in his second over before the home team ran into Samuels and Chanderpaul.
Chanderpaul, playing his first match of the series after sustaining a knee injury, hit eight boundaries during his 82-ball knock before hooking paceman Mohammad Sami straight to deep fine leg with just 58 needed for victory.
The Chanderpaul-Samuels third-wicket stand is a new record against Pakistan, beating the 137 put on by Viv Richards and Richie Richardson in Karachi in 1987.
Samuels, whose last fifty came against Sri Lanka in June 2003 and last hundred against India in 2002, was harsh on recalled leg-spinner Shahid Afridi whom he hit for three boundaries and completed his fifty off 61 balls.
Samuels and Brian Lara (13 not out) completed the victory when the West Indies captain hit Rao Iftikhar for a boundary.
Pakistan, missing captain Inzamam-ul-Haq, Mohammad Yousuf and Younis Khan, had a disastrous start as paceman Daren Powell dismissed Afridi off his fourth ball and then had Imran Farhat caught in the slip in his sixth over.
Fellow paceman Dwayne Smith then dismissed Mohammad Hafeez (one) and Shoab Malik (nought) to leave Pakistan struggling at 47-4 off 17 overs.
Hameed led the recovery through a 62-run fifth wicket stand with Faisal Iqbal. The 28-year-old Hameed, playing his first match in 12 months, hit three boundaries in his snail-paced 118-ball knock.
In the final overs Abdul Razzaq (33) added a quick 45 runs for the eighth wicket with Naved (18) to boost the total.
Inzamam was ruled out by a finger injury, further depleting a Pakistan side already missing Yousuf, who skipped the match to be with his pregnant wife, and Younis, whose brother died recently.
Paceman Umar Gul and spinner Abdul Rehman were rested to make way for Afridi, Mohammad Sami, Hameed and Iqbal.
The West Indies brought in Chanderpaul, Powell and Dave Mohammed. The tourists rested Corey Collymore (flu), Daren Ganga and Jerome Taylor.