Rai claimed gold with a combined total of 317.15kg after taking bronze in the snatch and gold in the clean-and-jerk at Manchester's International Convention Centre.
Morgan was forced to settle for a trio of silvers as he continued his record of winning a medal in each of his Games appearances.
Australia's Damian Brown, who won overall gold in 1998, finished first in the snatch but failed with all three of his attempts in the clean-and-jerk to miss out on two more medals.
It allowed Nauru's Renos Doweiya to claim overall bronze after his third place in the clean-and-jerk.
Morgan, who won gold at the age of 17 in Brisbane at the 1982 Games, was roared on by a large crowd.
The 37-year-old threatened to take gold in the snatch as he levelled Brown's lift of 145kg with his final attempt.
But Brown claimed a dramatic win by equalling the Games record with a lift of 147.5kg.
Doweiya's failure at 165kg in the clean-and-jerk ensured that Morgan would finish in the top three after lifting 160kg.
Rai made his first lift at 167.5kg with ease and Morgan bowed out with a final failure at the same weight.
Brown failed with his first two efforts at 175kg but upped the weight to 177.5kg for his final lift.
But another failure left him without a score to rule him out of the medals as Rai took the title.
Tony Morgan of Wales finished sixth overall and Northern Ireland's Peter Stewart was ninth.