Russell Westbrook added 36 for the Thunder, but it was Durant who took over in his fourth 40-point game of the season, scoring 19 in the fourth quarter and falling one shy of the season-high 42 he scored two games earlier against the Los Angeles Lakers.
Oklahoma City won their fourth straight, the last three on the road to improve their NBA-best record to 30-8. Durant scored 33 Sunday night in an 87-83 win at Portland.
Shannon Brown scored 21 for the Suns. Marcin Gortat had 19 points.
JAZZ 104, HEAT 97
In Salt Lake City, Utah, Al Jefferson scored 23 points, Gordon Hayward added 22 — including a jumper with 40 seconds remaining — and the Jazz held on to beat Miami.
The Heat were down 21 points in the third quarter, but fought back to pull within two behind a 32-point effort by LeBron James. However, James was called for goaltending and an offensive foul on back-to-back possessions late, then missed a three-pointer with Miami down six with 2 minutes, 19 seconds left.
Chris Bosh added 16 points for Miami and Rashard Lewis had 13 off the bench.
KINGS 124, CAVALIERS 118
In Sacramento, California, DeMarcus Cousins had 26 points, 14 rebounds and six assists, and the Sacramento Kings snapped a four-game losing streak with a win over the Cleveland Cavaliers.
Jimmer Fredette and Cousins both scored eight points in the fourth quarter for the struggling Kings, who had allowed nearly 118 points per game during the losing streak and had three losses of 20 points or more.
Reserve Dion Waiters scored a career-high 33 points for the Cavaliers, who have lost three straight and eight of 10.