Ngannou, 37, put Fury on the canvas in round three after connecting with a left hook.
But while one judge scored it 95-94 in favour of Ngannou, two gave it to Fury at 96-93 and 95-94.
Fury’s WBC heavyweight belt was not on the line.
“That definitely wasn’t in the script,” Fury told TNT Sports.
“I got caught round the back of the head [for the knockdown]. I wasn’t hurt. I got up and got back to my boxing.”
Ngannou, making his professional boxing debut, came out tentatively behind the jab in the opening round and Fury seemed content with a slow start as he looked to get a read on his opponent.
Fury got a first taste of Ngannou’s power in round two, though, as a cut opened on the forehead of the Gypsy King when he ate a left hook.
Fury hit the canvas in round three when he was found behind the right ear with that same punch and, perhaps still feeling the impact of that shot, struggled to find his rhythm until the fifth round when he caught Ngannou with a straight one-two combination.
After a brief push back from Fury when he started to box at range and have success with his jab, Ngannou again began to land some heavy punches in the latter rounds.
It seemed the scorecards were against Fury and he appeared desperate when lunging forward in the seventh, missing Ngannou and falling to his knees – deemed a slip rather than a knockdown.
Ngannou boxed very smartly when he was able to close the distance, using his MMA skills to clinch and land shots to the body and head.
Fury’s face carried the damage as the final bell rang and Ngannou’s corner held his arms up high in the expectation that he was on the verge of pulling off the biggest shock in boxing.
But the scorecards controversially fell in the favour of the seasoned boxer, who won the commemorative ‘Riyadh champion’ belt.
Fury’s victory means a blockbuster bout with fellow heavyweight champion Oleksandr Usyk, who holds the WBA, WBO and IBF titles, which has been signed, remains on the horizon.
An undisputed heavyweight contest, the first in four-belt era, has been mooted for 23 December, however, a cut and bruised Fury might struggle to turnaround so quickly.
Two arenas and plenty of ceremony
The fight in Riyadh was held in a separate ring and in an adjacent arena to the rest of the undercard.
The undercard took place at a small outdoor arena and concluded with a British heavyweight title contest as Fabio Wardley defended his belt against David Adeleye.
After a lengthy break the crowd and media moved into the 26,000-seater Boulevard Hall stadium for a musical offering, which felt like a mix between the Super Bowl half time show and Eurovision.
It ran for around 30 minutes, with London rapper Flowdan, Grammy award winner Lil Baby and American singer Becky G performing.
As the musical acts concluded, the floor opened and the ring raised from the ground to a huge roar from those inside the 20,000-seater arena.
Eventually, both fighters – wearing crowns – made their way to the ring, but only after they each sat on a gold throne.
Saudi Arabia’s star-studded show
There has been no shortage of glamour in Riyadh this week with a plethora of celebrities gathered for the event.
Where else would you see former two-weight UFC champion Conor McGregor sat between ex-Liverpool forward Sadio Mane, who now plays for Al-Nassr in the Saudi Pro League, and ex-Manchester United defender Rio Ferdinand?
Plenty of famous faces from the world of combat sports turned out in big numbers, with Manny Pacquiao, Ricky Hatton, Frank Bruno, Oscar de la Hoya, and Prince Nazeem Hamed among those flying the flag for boxing, while former mixed martial artists Chuck Liddell, Randy Couture, Junior dos Santos and Frank Mir were ringside.
Footballing great, past and present were also among the crowd, including five-time Ballon d’Or winner Cristiano Ronaldo dashing to the event just hours after a 3-1 win for Al-Nassr at Al-Feiha, alongside former Brazil international Ronaldo and ex-Real Madrid forward Figo.
Producer and fashion designer Kanye West and fellow rapper Eminem also made the the trip to Riyadh.
The event formed part of ‘Riyadh Season’ – an entertainment events festival held in Saudi Arabia’s capital every year since 2019.
The Saudi Arabian government reportedly paid big money to host the crossover bout, but the country’s increased involvement in global sport has proven controversial.
Saudi Arabia’s increasing desire to host elite sporting events – including boxing matches, an annual Formula 1 race, and a bid for the 2034 World Cup – has brought scrutiny due to the country’s poor human rights record.
Mohammed bin Salman, the Saudi crown prince, said in September that he “does not care” about accusations that the country is “sportswashing” – investing in sport and using high-profile events to quell criticism of its practices and improve its international reputation