Portland won its fourth in a row, ended San Antonio's winning streak at six and moved within a half game of the Spurs for the best record in the Western Conference.
San Antonio had a one-point lead when Matthews hit a long-range shot with 3:46 left to put the Trail Blazers in front for good. He added another with 2:42 remaining to give Portland a four-point advantage and then made one more with 1:25 left that put the Trail Blazers ahead by six.
Matthews hit six 3-pointers in all and scored 24 points. LaMarcus Aldridge led Portland in scoring with 26 points and also grabbed 13 rebounds. Damian Lillard added 21 points.
Portland has defeated the Spurs in each of their last four meetings.