CLEVELAND -- Terry Rozier was stunned as he set up to take a shot that would have capped a huge comeback for the Charlotte Hornets.
Rozier, who almost single-handedly brought the Hornets back from a 24-point deficit, missed a wide-open 3-pointer with three seconds left and the Cleveland Cavaliers hung on for a 100-98 win Wednesday night.
"It was crazy I was so open," he said. "I couldn't believe it. I was so open for the last couple shots. It would have been good to get this one. It stinks that I missed it."
Rozier scored 19 of his career-high 35 points in the fourth quarter, including five 3s, as the Hornets nearly dealt the Cavaliers a crushing defeat after Cleveland led the entire game and was ahead 67-43 early in the third.
Cavaliers forward Kevin Love, who had his feet in a bucket of ice while sitting at his locker after the game, knew what his reaction would have been if Rozier's shot had gone in.
"I probably would have dumped this ice on my head and then left," he said.
Collin Sexton scored 23 points and Cedi Osman had 18 for Cleveland, which had lost 16 of 18.
Rozier's 3-pointer with 21 seconds remaining cut the deficit to 100-98. Sexton dribbled the ball off his foot and out of bounds with 16 seconds left.
Rozier, thanks to a strong screen set by Cody Zeller, popped open at the top of the key, but the shot hit off the rim and Sexton grabbed the rebound to finally secure the victory for the Cavs.
Cavaliers coach John Beilein said a defensive breakdown led to Rozier being so open on the last play.
"We missed a switch, so we were not in a position for the next switch," Beilein said. "Rozier was just terrific. There were a couple tough shots, but a couple where we just got lost."
Rozier was 12 of 27 from the field and 7 of 15 on 3s. Zeller had 15 points for the Hornets.
Love had 16 points and 14 rebounds for Cleveland. Tristan Thompson added 14 points and 13 rebounds.
Cleveland's biggest lead came on Darius Garland's 3-pointer, but Charlotte heated up from the field and cut into the margin. Rozier scored seven points, including a 3 at the third-quarter buzzer that trimmed the margin to 76-64.
The Hornets continued to slice into their deficit in the fourth. Rozier and Devonte' Graham hit 3s on consecutive possessions, cutting it to 84-74.
Charlotte, which defeated Sacramento at home on Tuesday, looked like a team on a back-to-back to start the game. The Cavaliers made 14 of 25 shots in the first quarter and led by 12.
Cleveland controlled the first half despite not attempting a free throw. Charlotte committed four fouls before halftime. The Cavaliers finally got to the foul line less than a minute into the third quarter as Osman was fouled while scoring on a fast break, but missed the free throw.
Osman had a highlight-reel defensive play when he chased down Marvin Williams and blocked his layup attempt in the third.
Sexton made his first eight shots and was 10 of 14 from the field.
Hornets: F Nicolas Batum missed his fifth straight game. He's still feeling discomfort in his left hand after breaking a finger in the season opener. ... G Mailk Monk bruised his left hip in the first half and didn't return.
Cavaliers: G Kevin Porter Jr. played with protective padding on a sore left shoulder. He took a lob pass from Garland and slammed home a dunk with his right hand in the first quarter. ... Sexton made his 100th career start, joining LeBron James and Kyrie Irving as the only players in franchise history to do so before turning 21.
Rozier was born in Youngstown and played high school basketball at Shaker Heights, which is 7 miles from downtown Cleveland. He said he had about 40 family members and friends in attendance.
"It was in my city," Rozier said. "No matter what happens, it's my city. I could play better basketball, but I had a lot of people who are special to me here."
Hornets: Host the Utah Jazz on Saturday.
Cavaliers: Host the Memphis Grizzlies on Friday.