Ryan Garcia knocked down Devin Haney three times on his way to a majority points win on a dramatic night in New York.
Previously unbeaten world champion Haney was floored in the seventh, 10th and 11th rounds.
Garcia won by scores of 115-109 and 114-110 on two of the judges' cards, while the third had it 112-112.
But Garcia did not win Haney's WBC light-welterweight title after missing weight for the fight.
“You really thought I was crazy? You all lost your own minds,” said Garcia, who had been criticised for his behaviour in the build-up.
The speed and power in his hands was too much for Haney, who was hurt right from the opening round and suffered his first pro defeat in 32 bouts.
“I'm disappointed about my performance,” said Haney. “I [showed I] was a true champion and I could fight after being knocked down.”
Garcia wobbled Haney with a big left hook in the opening round, and though Haney steadied himself and appeared to winning the middle rounds, Garcia's power showed up again in the seventh.
A straight left set up the first knockdown and Haney struggled to regain his balance the rest of the round. He went down twice more in the round, but neither was ruled a knockdown by the referee, who also took a point from Garcia in the round for hitting on the break.
But there was no denying the knockdowns in the 10th and 11th, and Garcia was able to spend most of the 12th taunting the champion.