North Melbourne has become the first travelling team to beat Fremantle at Optus Stadium after a gritty 28-point triumph on Sunday evening.

After a tight first half, the rain came and the Roos adapted to the conditions better to kick away to a 12.14 (86) to 8.10 (58) victory.

Freo's loss could be soured by a potential concussion suffered by veteran ruckman Aaron Sandilands, who clashed heads with Sam Durdin attempting to lay a shepherd in the last term.

Coleman Medal leader Ben Brown was well held by Joel Hamling but still booted two important second-half goals, however veteran Jarrad Waite (three) was the difference.

The 35-year-old slotted two crucial majors during a wet third term, guiding the Roos to a handy 11-point advantage at the final change.

Waite's third from the goalsquare to open the fourth quarter gave North just enough breathing space to survive a gallant Freo fightback.

Freo were struggling to find an avenue to goal but when defender Michael Johnson stepped up from long-range and Michael Walters soccered his second, the home side closed to within three points with plenty of time remaining.

However, Fremantle's charge was snuffed out in controversial circumstances.

A non-decision when tagger Ben Jacobs wrenched Hamling away from a contest allowed Shaun Atley to burst through to goal, incensing the majority of the 37,575 fans.

The incident took the wind out of Freo's sails and late goals to Mason Wood and 200-gamer Todd Goldstein secured North's sixth victory, and ensured Brad Scott's men will finish round 10 in fifth spot on the ladder.   

Tagger Ben Jacobs was outstanding for the Roos, bouncing back after Nat Fyfe (31, eight clearances) won the battle in the opening quarter.

Fyfe racked up 13 disposals, four clearances and booted a goal before quarter-time but Jacobs limited the captain's influence from then onwards and finished with 29 disposals, nine tackles and a goal.

Ben Cunnington (20 disposals) continued his strong form, with support from Shaun Higgins (24), who fought through a tag from Bailey Banfield in a spicy battle.

Walters was Freo's best, and tried to lift Ross Lyon's outfit with 27 disposals and two majors, while workhorse David Mundy (24, one goal) was tireless and Luke Ryan's (28) rebound was valuable.

For all their territory dominance (31-19 inside 50s), the wasteful Roos only took a one-point lead into half-time, leading 4.12 to 5.5.

North had six behinds on the board before Walters opened Freo's account and about the only thing the Roos could've kicked was themselves.

Fyfe's dominant opening term gave Freo an eight-point early edge, and it was looking ominous for the visitors when Brennan Cox kicked a goal to start the second stanza.

But the Roos rallied and, struggling to find the major opening, they had a simple answer – just get closer. 

Jy Simpkin, Ben Jacobs and Kayne Turner kicked truly from point-blank range, as North worked back into the contest and weight of contested possession (161-146) and inside 50 (60-46) numbers eventually told the story. 

"Aaron going down changed the mix around stoppages a little bit and they got some territory in territory conditions," Dockers coach Ross Lyon said.

"I thought they just had a bit of an edge on us in different parts of the game with speed, a bit of polish and consistency in things we're trying to do, probably some decision-making.

"When the game was tight there was a couple of things, obviously our discipline was disappointing and not at the level required.

"But I thought as the game was really tight their key forwards took some clunks and kicked the goals."

FREMANTLE                       3.4      5.5      6.8      8.10 (58)                  
NORTH MELBOURNE        1.8      4.12    7.13    12.14 (86)            

GOALS
Fremantle: Walters 2, Brayshaw, Fyfe, Cox, Mundy, McCarthy, Johnson
North Melbourne: Waite 3, Wood 2, Brown 2, Simpkin, Jacobs, Turner, Atley, Goldstein

BEST 
Fremantle: Walters, Fyfe, Hamling, Matera, Langdon
North Melbourne: Jacobs, Waite, Cunnington, Tarrant, Turner, Macmillan 

INJURIES 
Fremantle: Sandilands (head knock)
North Melbourne: Durdin (head knock)

Reports: Nil

Umpires: Williamson, Fleer, Hay

Official crowd: 37,575