After leading by 32 points at half-time, Fremantle weathered a third quarter fight-back from the Swans to run out easy winners.
Freo's pressure, led by 11 tackles to Adam McPhee and 10 to Michael Barlow, was a vital ingredient of the victory.
David Mundy had 25 possessions to be one of his side's best, while Paul Hasleby was excellent in the tough conditions
Skipper Matthew Pavlich kicked three crucial first-half goals.
Youngster Nathan Fyfe was also prominent in his fifth game of AFL football with 23 disposals, and Kepler Bradley played an important role backing up Aaron Sandilands in the ruck.
Final score: Fremantle 14.16 (100) defeated Sydney 9.9. (63)