The problem with positing a British imperial motive for the Italy invasion is simply that it is entirely inconsistent with Churchill's approach to the rest of the war, especially what he allowed to happen at Yalta. I don't blame Roosevelt quite so much for the latter as he was a dying man at that point, but Churchill essentially ceded the Balkans to Stalin. And Britain, quite honestly, had no imperial ambitions in Italy.
But what was giving away at Yalta was not in Britain’s sweat spot, i.e. keep the seas free for British trade. So, Churchill was giving up things he was perfectly content to give up.