Elgin extended their unbeaten run to six games and condemned Montrose to a third successive away defeat.
Two Ross O'Donoghue strikes, the first a neat finish from the edge of the area, the second a 30-yard effort, set the home side on their way.
Scott Johnston's 20-yard strike got Montrose back in it and Alexander Clark denied Sean Pierce an equaliser.
But Jason Crooks sealed it for Elgin, steering home after Mark Nicolson's shot came his way.
Elgin: Clark, Niven, Duff, Nicolson, MacPhee, Cameron (Beveridge 80), Leslie, O'Donoghue, Moore, Gunn (Millar 85), Crooks (Edwards 84). Subs Not Used: Calder, McLean.
Goals: O'Donoghue 10, 17, Crooks 66.
Montrose: Andrews, Crighton, Smart (McNalley 84), Cambell, Douglas Cameron, Winter, Crawford, Masson (McPhee 70), Pierce (Dimilta 85), Boyle, Johnston.Subs Not Used: Wood.
Booked: Crighton, Pierce.
Goals: Johnston 29.
Referee: Matt Northcroft (Scotland)