The 25-year-old Argentine, a last-minute wild-card entry for injured Andy Murray, won 7-6(5) 7-5 with the lone break of serve of the match coming at the fag end of the second set as Raonic lost the final in Tokyo for the second year running.
The win gave del Potro his third title of the year and moved him up to fifth spot in the race to London while Raonic is 10th in the qualification race for next month's tournament involving the top eight players of the world.
Raonic, 22, who finished runner-up to Kei Nishikori last year, fired 17 aces and was untroubled in his service games before a crucial double fault in the first-set tie-breaker put del Potro ahead.
The Argentine got his first break point opportunity in the 11th game in the second set and managed to convert the third to go 6-5 up before holding on in the next game to win in an hour and 43 minutes.
"I played really well in the last two games of the match, returning all of his first serves," del Potro told reporters. "It was a fantastic week for me as I played better and better with each match.
"In the tie-break, he hit a double fault in the most important part of the match and then my chance came, which I knew I had to take.
"I did what I could to win. When he serves well and hits aces, it means I have to be aggressive on serve. I threw in drop shots and came to the net to mix up my game."
Del Potro hit seven aces and had to save three break points in the first set against the Canadian, who had won their only meeting in Montreal in August.
"I created opportunities and barring a double fault and a few points I could not have done much better," Raonic rued.