Josh Kerr took advantage when the Scotland under-17 player came for a corner and missed it to put Celtic in front before McCrorie dropped a Mark Hill free-kick over the line.
With Old Firm managers Ronny Deila and Stuart McCall looking on, it was the former who left happiest after seeing Tommy McIntyre’s side record a deserved victory.
As only local schoolchildren and their parents were allowed in following trouble among fans at the last three finals, the match passed without any major off-field problems.
Celtic dominated for large spells and had an early penalty claim turned down. Kyle Bradley’s handball in the box from Regan Hendry’s shot went unnoticed by referee Stephen Graham before the midfielder fired the rebound straight at McCrorie.
Calvin Miller then shot just over from 20 yards, Hendry was denied again by McCrorie and Miller screwed another long-range drive inches wide as Celtic looked more likely to score.
Just when it seemed they would get themselves in front, Hendry nodded past from close range when Miller picked him out with a great right-wing cross.
Rangers were being restricted to playing on the counter attack and offered little going forward, with a low Ross Lyon shot that ran tamely wide being as close as they came.
It took some strong defending to keep them level at the break too, with two last-gasp tackles by Wilson and Ross McCrorie being just enough to deny Hendry.
Celtic kept pressing through Theo Archibald and Rory Currie and almost paid for their slackness in front of goal.
Rangers’ Sam Jamieson forced a terrific tip over the bar by goalkeeper Ross Doohan then Wilson nodded a Lyon corner over.
Celtic responded once again, with Robby McCrorie smothering Hill’s attempt, Dan Higgins aiming too high from 20 yards and McCrorie gathering Archibald’s grasscutter.
Rangers made their best chances through Lyon and substitute Jamie Barjonas but rued their misses as Celtic scored twice in as many minutes.
McCrorie failed to take Hendry’s corner when he tried to claim it with 16 minutes left, and Kerr lashed in the loose ball from four yards.
The goalkeeper’s error moments later was worse, however, as he fumbled into the net when a flighted Hill free-kick came in from wide on the left to finish the game.
Celtic: Doohan; Ralston, Kerr, Higgins, Church; Miller, McKenna, Hill, Archibald (Murray 90); Hendry; Currie (Aitchison 63). Subs not used: McAdams, Bell, Quinn, Johnstone, Bowers.
Rangers: Robby McCrorie, Bradley, Wilson, Ross McCrorie, White; Thomson; Jeffries (Burt 54), Brandon (Barjonas 54), Ashmore, Lyon (Nelson 74); Jamieson. Subs not used: Wright, Krones, Dallas, Clark.
Referee: S Graham