The Dockers wasted chances with some point-blank misses and poor set shots in the first half but delivered when it mattered in the final quarter.
GWS were left to rue missed opportunities as wayward kicking and a lacklustre fourth term cost them in the capital, where they had won nine in a row.
Giants star midfielder Stephen Coniglio topped the charts with 37 disposals, while Jeremy Cameron booted four goals in the absence of injured star Callan Ward.
Dockers defender Taylin Duman could find himself in trouble with the match review panel after shoving Lachie Whitfield in the face in the third quarter but will likely just cop a fine.
GWS veteran Matt de Boer was tipped to shadow Fyfe but also spent time on Andrew Brayshaw and Bradley Hill in a busy afternoon for the in-form tagger. Giants co-captain and key defender Phil Davis went off in the final term with an ankle injury.
FREMANTLE 4.4 8.7 10.9 16.10 (106)
GREATER WESTERN SYDNEY 3.6 7.9 10.13 11.16 (82)
Goals: Fremantle: B Matera 4 J Hogan 3 M Taberner 3 M Walters 3 R Lobb S Switkowski T Colyer. Greater Western Sydney: J Cameron 4 J Finlayson 3 B Daniels H Himmelberg M Buntine S Coniglio. Umpires: Mathew Nicholls, Brendan Hosking, Eleni Glouftsis
Official Crowd: 11,277 at Manuka Oval