Serge Ibaka supplied 16 points and 11 boards, while Reggie Jackson added 13 points and six assists for the Thunder, who have won four of their last five games.
Star Thunder guard Russell Westbrook did not suit up to rest his surgically- repaired knee.
Dion Waiters netted 30 points to lead Cleveland, which has dropped three in a row and seven of its last nine.
Cleveland trailed by as many as 21 in the fourth quarter before Waiters capped a 16-2 run with a layup to bring the Cavs to within 97-92 with 1:12 to go.
Jackson missed a turnaround at the other end, but Ibaka came down with the offensive rebound and Durant sank two free throws to extend the margin back to 99-92 with 37.6 ticks on the clock. Waiters then missed a layup and Durant hit two more foul shots to seal the outcome.
Earlier, the Cavaliers led 25-21 after a quarter of play and got within 45-44 with 2:38 to go until the break after Waiters knocked down a turnaround jumper, but OKC closed the half on an 11-2 run.
Durant nailed a jumper right at the first-half buzzer to give the Thunder a 56-46 spread going into the locker room. Durant hit a triple to begin the third and a Steven Adams dunk gave OKC a 61-46 lead early in the second half, its largest to that point.
The Thunder took an 85-68 advantage into the fourth.