In a match eventually reduced to 40 overs per side after rain interruptions before and during the match, England recovered from a horrific first ten overs to post 206-9 from their 40 overs after being put in to bat by West Indian skipper Shai Hope.
Debutant Matthew Forde got proceedings off to the best possible start for the West Indies with the wicket of Phil Salt for just four at the end of the first over.
Not long after, Forde was at it again, picking up the wickets of Zak Crawley (0) and Will Jacks (17) to leave England struggling at 45-3 at the start of the ninth over.
45-3 became 48-4 in the 10th over when Alzarri Joseph brilliantly ran out Harry Brook off his own bowling for one.
England captain Jos Buttler, fresh off a half-century in the last game, lasted only one ball on Saturday.
Joseph greeted Buttler with a well-directed short ball that he was unable to control, helping the ball out to Gudakesh Motie on the deep square leg boundary for a simple catch to leave England 49-5 after 10 overs of the rain-shortened 43 overs per side contest.
An 88-run sixth wicket partnership between Ben Duckett and Liam Livingstone provided some stability to the English effort before Duckett fell for a well-played 73-ball 71 in the 26th over. His knock included six fours and one six.
Livingstone was next to go two overs later, caught by Sherfane Rutherford at mid-on off the bowling of Romario Shepherd for 45 to leave England 142-7.
With England 161-7 off 33 overs, the rains came once again. Soon after the restart, England lost their eighth wicket when Rehan Ahmed fell caught behind off the bowling of Alzarri Joseph for 15 to leave the score 166-8 in the 34th over.
Joseph picked up his third wicket when he had Sam Curran caught on the point boundary by Gudakesh Motie for 12 to leave England 171-9 in the 36th over.
In the end, a 35-run 10th wicket partnership between Gus Atkinson (20*) and Matthew Potts (15*) helped England reach 206-9.
Forde ended with 3-29 from his eight overs while Joseph was expensive, going for 61 from his eight overs with three wickets to his name.
A third rain delay during the innings break meant the West Indies had a revised target of 188 from 34 overs.
The chase got off to the worst possible start when Brandon King was caught at cover off the bowling of Gus Atkinson for just one in the second over.
Alick Athanaze and Keacy Carty then put together a solid 76-run second wicket partnership that ended when Atkinson trapped Athanaze in front for a 51-ball 45 in the 14th over.
Captain Shai Hope was next to go, caught brilliantly by Matthew Potts off the bowling of Rehan Ahmed for 15 to leave the West Indies 99-3 in the 17th over.
Then, with the West Indies cruising needing 72 from 78 balls, Shimron Hetmyer mistimed a ball straight into the hands of Phil Salt at point for 11 off the bowling of Will Jacks.
The West Indies quickly lost another one when Sherfane Rutherford held out to Zak Crawley at long on off Jacks’ bowling for three to leave the score at 122-5 after 23.2 overs leaving the hosts needing 66 runs from 64 balls.
Carty, two balls after bringing up an excellent half century, became Jacks’ third victim in quick succession caught and bowled to leave the West Indies 135-6 needing 53 runs from 50 balls.
The 31st proved to be the ultimate game changer for the West Indies. The over bowled by Gus Atkinson went for 24 to leave them needing just nine more to win from the final three overs.
In the end, Romario Shepherd (41*) and Matthew Forde (13*) steered the West Indies to 191-6 off 31.4 overs to seal the 2-1 series win.
Will Jacks tried his best for England with 3-22 from his seven overs while Gus Atkinson ended with 2058 from his six overs.
Full Scores:
England 206-9 off 40 overs (Ben Duckett 71, Liam Livingston 45, Matthew Forde 3-29, Alzarri Joseph 3-61, Romario Shepherd 2-50)
West Indies 191-6 off 31.4 overs (Keacy Carty 50, Alick Athanaze 45, Romario Shepherd 41*, Will Jacks 3-22, Gus Atkinson 2-58)