The hosts declared to finish the day 442-8 with Marsh helping himself to a healthy 126 under the lights. England offered a reply of 29-1 before rain ended play having already lost Mark Stoneman (18) off Mitchell Starc's delivery.
With Australia already leading 1-0 in the series, England are now facing a major uphill battle to retain the Ashes down under. Joe Root's decision to bowl first did not have the desired effect on day one on Saturday with Marsh, whose selection in Brisbane last November was met with cynicism by some sections of the Australian press, punishing them further after a fine day with the bat.
With his side continuing with an overnight score of 209-4, Marsh secured his fifth Test century after seeing his stand of 85 with Tim Payne (57) wiped out after the latter dismissed by Stuart Broad.
While the hosts had lost opener Peter Handscomb after just the third ball of the day, Marsh led the charge throughout the day-night session. His new partner Pat Cummings endured a slow start at the crease but his return of 44 runs of 53 balls delayed England's wait for another wicket before he fell just short of a maiden Test 50.
England's woes were epitomised during one calamitous incident when Alastair Cook and James Vince both chased down Marsh's strike, crashing into one another with neither claiming the ball.
After the hosts declared, England offered some hope in the little time that remained with Stoneman and opener Cook putting 29 runs on the board during the 9.1 overs to be played before rain forced the stoppage.
With Australia edging closer to a second Test victory, England are now in need of a minor miracle in Perth later this month where they have not won since 1978 to keep their series hopes alive.