Thompson finished with 27 points and David Lee added 16 for the Warriors, who rallied from an 18-point deficit in the third quarter. Golden State snapped a two-game skid and pulled 1½ games behind the Blazers for the Western Conference's No. 5 playoff spot.
Damian Lillard scored 26 points and Nicholas Batum had 23 points and 14 rebounds as the Blazers, playing without injured All-Star forward LaMarcus Aldridge, lost for the fifth time in five games.
Batum had a chance to tie the score with 5.8 seconds remaining, but missed the second of two free throws. The Blazers failed to get a shot off after gathering the rebound.