Phoenix, which rallied from a 14-point deficit in the third quarter, pulled to within one-half game of idle Houston in the battle for the eighth and final Western Conference playoff spot.
The Suns held the Raptors without a basket in overtime (0-of-8).
"We had a gut check and we followed through with it and came up with a good win," Marion said. "We needed that win right there tonight."
Struggling against lesser teams is nothing new for the Suns, who improved to 13-15 against clubs below .500.
"We have a better winning percentage against .500 teams or better than against teams under .500," said Phoenix Coach Frank Johnson. "I thought we fell victim again, but we found a way, pulled it out and hit some big shots."
Marbury scored 25 points and Penny Hardaway added 18 for the Suns, who shot 43 percent from the field (35-of-82). They trailed, 48-41, at intermission.
Phoenix took the lead for good when a jumper by Stephon Marbury snapped an 89-89 tie with 3:25 left. Marion added a three-pointer for a 94-89 cushion with 87 seconds remaining.
The Raptors tied it, 87-87, with 6.3 seconds left in regulation on a bucket by Voshon Lenard, but Toronto played the overtime without Vince Carter, who fouled out with 1:40 to go in the fourth quarter.
Morris Peterson scored 17 points for the Raptors, who suffered their sixth straight loss, and completed an 0-5 road trip.
Carter scored 15 points for the Raptors, but missed his only shot in the fourth quarter.
NBC reportedly holds celebs hostage to Jimmy Fallon's show
Ray Liotta sues skin care company over use of likeness