At lunch on day four,the visitors were 7-96 in their second innings with an overall lead of just 17 runs.
WA resumed at 4-39 in their second dig,still 40 runs behind the hosts after ex- Test batsman Shaun Marsh was dubiously caught behind for eight late on Monday.
Gannon (4-15 off 18 overs) threatened to make short work of the WA innings on Tuesday.
He claimed Hilton Cartwright (17) and Josh Philippe (0) in consecutive balls to reduce WA to 6-50 and be on a hat-trick for the second time in the innings.
He had dismissed opener Sam Whiteman (9) and all-rounder Marcus Stoinis (0) in successive balls late on Monday.
And when young quick Xavier Bartlett (3-21) had'keeper Josh Inglis caught behind for two to have the visitors reeling at 7-53,it appeared to be an early finish on Tuesday.
However,impressive all-rounder Cameron Green (30 not out) and Matthew Kelly (19 not out) dug in to defy the Bulls and safely steer WA to lunch in an unbroken 43-run eighth-wicket stand.
Green is in fine form after top scoring in WA's first dig of 332 with an unbeaten 87,while Marsh stroked a fine 77 to help the visitors recover from a disastrous start at 2-2.
AAP