Anthony's performance was a bit short of the 40-point efforts in his previous three straight games, but the Knicks' forward was a dominant force under the boards with nine offensive caroms.
New York used an 11-2 run down the stretch to pull away, highlighted by two big baskets from J.R. Smith, who finished with 22 points.
Raymond Felton supplied 16 points and eight assists while Tyson Chandler (15 points), Jason Kidd (14) and Chris Copeland (13) also played big roles as the Knicks won a 50th game for the first time since 1999-2000.
The Thunder, meanwhile, saw their three-game winning streak broken despite 37 points, 11 rebounds and eight assists from Russell Westbrook.
Kevin Durant added 27 points and seven assists in the loss.
Oklahoma City fell behind San Antonio for the No. 1 seed in the Western Conference with the defeat.