Dion Waiters has been through this before.

For two years, no Cavaliers lead has been safe against the Phoenix Suns.

"It's weird playing against Phoenix,'' Waiters said. "We always get a big lead on 'em every time, and they find a way to come back and beat us.''

Two years ago, the Cavs lost a 26-point lead in what became a 107-105 loss, and earlier this season they lost a 20-point lead in what became a 99-90 loss.

But Wednesday night, the Cavs held the lead for all 48 minutes of a 110-101 victory over the Suns at U.S. Airways Center.

"They looked like the team that was trying to get into the playoffs,'' said Phoenix coach Jeff Hornacek. "We looked like the team that just wanted to play a basketball game.''

Kyrie Irving had 23 points, including 12 in the fourth quarter, nine rebounds and six assists as the Cavs snapped a four-game losing streak overall -- and a four-game losing streak to the Suns -- to improve to 25-40 and moved back within 3.5 games of idle Atlanta in the race for the No. 8 seed in the Eastern Conference playoff picture.

Spencer Hawes overcame a sprained ankle in the first half -- as well as a flagrant foul against Miles Plumlee -- and finished with 19 points, 17 in the first quarter, to help the Cavs get off to a strong start. Luol Deng added 18 points and nine rebounds, helping the Cavs to a 51-36 edge on the boards.

Goran Dragic had 20 points and Markieff Morris added 18 points and 10 rebounds as the Suns slipped to 36-28, two games behind No. 8 Dallas, which beat Utah on Wednesday, 108-101. Phoenix was without starting forward P.J. Tucker, suspended one game for elbowing the Clippers Blake Griffin on Monday. But the Suns got guard Eric Bledsoe back after missing 33 games with an injured right knee that required surgery. Bledsoe finished with 15 points and nine assists. Channing Frye added 17 points and was called for a flagrant foul against Tristan Thompson with 3:35 left in the game.