Ole Gunnar Solskjaer used the first of his side's six summer friendlies as an opportunity to field two lineups either side of half time.
After a goalless first half Down Under that saw United struggle to make the most of their possession, Rashford opened the scoring with an instinctive finish on the hour.
The Red Devils, who did not include Romelu Lukaku in their squad because of injury, added a second five minutes from time through Garner's drilled finish from his first touch of the ball.
Daniel James was handed his non-competitive debut and he was heavily involved in the opening 15 minutes, without managing to make a telling impact with his deliveries from the left.
United regularly turned over possession high up the field in the first half, but they struggled to create many shooting opportunities.
Ashley Young and Anthony Martial, who struggled to get involved in play when stationed high up the pitch, both picked out the side-netting with their attempts as the visitors were restricted to long-range shots.
The second-half XI fared slightly better, though, as Rashford made the breakthrough for United with 60 minutes on the clock.
Glory failed to pass the ball out from the back and Paul Pogba flicked it into the path of Rashford, who fired his shot across Reddy and into the far side of the net.
United added a second goal late on, however, as young midfielder Garner profited from more slack play from the hosts to bury the ball into the bottom corner less than two minutes after replacing Luke Shaw.
The Red Devils, who also hit the post in the final stages through Greenwood's strike, return to action on Wednesday with a friendly against old foes Leeds United at this same venue.
MANCHESTER UNITED FIRST-HALF XI (4-2-3-1): Romero; Dalot, Tuanzebe, Jones, Young; Matic, A.Pereira; Chong, Lingard, James; Martial
MANCHESTER UNITED SECOND-HALF XI (4-2-3-1): J.Pereira; Wan-Bissaka, Smalling, Rojo, Shaw (Garner 83'); McTominay, Pogba; Gomes, Mata, Greenwood; Rashford
PERTH GLORY (4-2-3-1): Reddy (Velaphi 78'); Franjic (Rawlins 92'), Lowry, Mrcela, Tratt; Kilkenny, Juande; Chianese (K.Popovic 76') Brimmer (Wilson 62'), Harold (D'Agostino 62'); Fornaroli (G.Popovic 76') body check tags ::