The Thunder led by 13 points with 5:17 remaining in the game but had to whether a late charge by the Spurs, who went on an 11-0 run sparked by Tim Duncan's six points.
Harden's 3-pointer with 28.8 seconds left turned back the rally, giving the Thunder a 106-101 advantage, and San Antonio's Manu Ginobili missed a potential game-tying 3-pointer with 4.9 seconds to go.
The Thunder, who had trailed 2-0 in the series, won their third straight after breaking the Spurs' 20-game winning streak.
Ginobili finished with 34 points, including five 3-pointers, dished off seven assists and grabbed six rebounds for San Antonio, which will try to avoid a stunning collapse in Wednesday's Game 6 at Oklahoma City.
Benedict Cumberbatch's dramatic reading of R. Kelly lyrics is just what you need
Couple mistakenly served bag of cash at McDonald's drive-thru