Crewe höjde baren framför sin nya chef David Artell, tar en första halv ledning genom skeppare Ryan Lowe nionde mål för säsongen.
Charlie Kirk borde ha gjort bättre när väl placeras till vänster om lådan tidigt, bara för att dra sin finish förbi den avlägsna inlägget, medan Guthrie var också kvar att rue skying en nära håll huvudet över efter att få på slutet av en retande frispark från George Cooper.
Crewe tog en välförtjänt ledning i 28: e minuten när Lowe halkade klart av Alex Kiwomya, den 38-årige veteranen hitta det avlägsna hörnet som han gjorde i ligan för första gången sedan även nät mot Luton på Kenilworth Road i oktober.
Men den imponerande Marriott hade Luton tillbaka på villkor på halvtid, som anfallaren skott från en snäv vinkel lyckades undvika Garratts kopplingar och smita in på nära stolpen.
Nathan Jones sida såg ut att vara upp mot det när de reducerades till 10 män åtta minuter efter pausen efter full-back Alan Sheehan fångade Danny Hollands för att förtjäna sin andra bokning.
Men Crewe var ogjord när Marriott klippte infield för att tvinga en räddning från Garratt och Danny Hylton höll attacken vid liv för att dra bollen tillbaka från by-line för Gray till sidefoot hem vinnaren.
Rapport från Pressföreningen.
Matchen slutar, Crewe Alexandra 1, Luton Town 2.
Andra halvlek, Crewe Alexandra 1, Luton Town 2.
Försök missade. Callum Saunders (Crewe Alexandra) header från mitten av lådan är bara lite för hög efter ett hörn.
Hörnet, Crewe Alexandra. Förföljd av James Justin.
Hörnet, Crewe Alexandra. Förföljd av John Mullins.
Hörnet, Crewe Alexandra. Förföljd av Jack Senior.
Försök missade. Ryan Lowe (Crewe Alexandra) höger fotad skott från höger sida av sex yard box är nära, men missar till höger.
Handboll av Callum Saunders (Crewe Alexandra).
Försök missade. Alex Kiwomya (Crewe Alexandra) höger fotade skott från utsidan lådan är nära, men missar det övre högra hörnet.
Hörnet, Crewe Alexandra. Förföljd av Jack Senior.
Substitution, Luton Town. Isaac Vassell ersätter Jack Marriott.
Substitution, Crewe Alexandra. Ryan Wintle ersätter Danny Hollands.
Försök missade. Callum Saunders (Crewe Alexandra) rubrik från vänster sida av sex yard box är nära, men missar till vänster.
Hörnet, Luton Town. Sammankallad av Jon Guthrie.
Hörnet, Luton Town. Förföljd av Alex Kiwomya.
James Jones (Crewe Alexandra) visas det gula kortet för en dålig foul.
Hörnet, Luton Town. Sammankallad av James Jones.
Pelly Rudock (Luton Town) vinner en frispark i anfallshalvan.
Foul av James Jones (Krewe Alexandra).
Försöket räddades. Jack Marriott (Luton Town) vänster fotade skott från mitten av lådan sparas i mitten av målet.
Försök missade. James Jones (Crewe Alexandra) höger fotade skott från utsidan lådan är nära, men missar till vänster.
Substitution, Crewe Alexandra. Callum Saunders ersätter Zoumana Bakayogo.
Försök missade. Danny Hollands ( Crewe Alexandra) rubrik från höger sida av sex yard box är nära, men missar till höger efter ett hörn.
Hörnet, Crewe Alexandra. Förföljd av Jake Gray.
Försök blockerat. George Cooper (Crewe Alexandra) vänster fotade skott utanför lådan är blockerad.
Försök missade. Danny Hylton (Luton Town) höger fotade skott från utsidan lådan är hög och bred till höger.
Mål!  Crewe Alexandra 1, Luton stad 2. Jake Gray (Luton Town) höger fotade skott från mycket nära håll till nedre vänstra hörnet. Assisterad av Danny Hylton.
Försöket räddades. Jack Marriott (Luton Town) höger fotade skott från utsidan rutan sparas i nedre högra hörnet.
Hörnet, Crewe Alexandra. Förföljd av Jack Senior.
James Justin (Luton Town) vinner en frispark i anfallshalvan.
Foul av Alex Kiwomya (Krewe Alexandra).
Försök missade. Scott Cuthbert (Luton Town) huvudet från mitten av lådan är nära, men missar till höger efter en set bit situation.
Substitution, Crewe Alexandra. Chris Dagnall ersätter Charlie Kirk.
Pelly Rudock (Luton Town) vinner en frispark i anfallshalvan.
Foul av George Cooper (Krewe Alexandra).
Försök missade. George Ray (Crewe Alexandra) höger fotad skott från mitten av lådan är bara lite för hög efter en viss bit situation.
Foul av Jonathan Smith (Lutonstaden).
Oliver Turton (Crewe Alexandra) vinner en frispark i den defensiva halvan.
Substitution, Luton Town. Jack Senior ersätter Lawson D'Ath.
Substitution, Luton Town. Jonathan Smith ersätter Jordan Cook.
Mål från Jack Marriott och Jake Gray tjänade 10-man Luton en 2-1 comeback seger på Crewe.