Morgan struck seven fours and five sixes in a 69-ball innings of exactly 100 in Bristol before he holed out in the deep off the bowling of Benny Howell.
Fellow Irishman Paul Stirling batted through the innings for 127 not out, with Hilton Cartwright making a quickfire unbeaten 60 in a Middlesex total of 322 for three.
Gloucestershire could only manage 289 all out in reply, with New Zealand's James Franklin taking three for 42.
But a 33-run victory for the visitors was not enough to take them into the knockout stages of this 50 overs per side competition, with results elsewhere in the South Group going against Middlesex.
England face Scotland in a stand-alone one-day international in Edinburgh on Sunday before a five-match series against old rivals Australia gets underway at The Oval on Wednesday, June 13.
First Published: June 7, 2018, 12:54 PM IST