Rhys Waters and Ben Sokol both kicked two goals apiece for the Lions.
Captain Kyal Horsley had another 29 possessions, five inside 50s, four marks and three tackles for Subiaco while Chris Phelan gathered 27 disposals, Leigh Kitchin 24 (eight tackles), Josh Deluca 22 (six tackles), Greg Clark 22, Rowen Powell 20 and Braden Fimmano 19.
Hayden Kennedy continued his career-best run of form with another 26 possessions and eight inside-50 entries while the defence of Drew Rohde (15 touches, five marks) and Jordan Lockyer (15 disposals, nine marks) were solid again.
Will Maginness kicked three goals for East Perth and Nathan Blee two to go with 18 possessions, five hit outs and three tackles.
Brendon Ah Chee did what he could to earn a recall for West Coast in the AFL with 22 possessions, seven marks and six tackles with Luke Partington also finishing with 22 disposals and four tackles.
Mitch Fraser gathered 20 possessions down back while Sharrod Wellingham had 20 disposals, Brayden Ainsworth 20, Kurt Mutimer 18.
Matthew Allen continued his good form in attack with 19 possessions, nine marks and a goal.
East Perth started well with the game's first goal thanks to Will Maginness. Subiaco answered courtesy of Ben Sokol but Maginness then added a second at the 24-minute mark to be five points up.
But the Lions kicked the last goal of the term through Lachlan Delahunty to lead by a point at quarter-time and then it took 20 minutes for the goal major of the second quarter.
That went Subiaco's way to Rhys Waters and the Lions added another through Braden Fimmano to be 14 points in front at the main break.
It took just 20 seconds for the Royals to open the second half impressively with a goal to Nathan Blee but again Subiaco had the answers including three goals in seven minutes courtesy of Waters, Mackenzie Lawrence and Delahunty.
The Lions would go on to lead by 31 points at three quarter-time before three goals in the first five minutes of the last term for East Perth to Matthew Allen, Maginness and Mitch Dobson made things interesting.
The Lions steadied, though, and goals to Brad Stevenson and Sokol secured the eventual 18-point triumph.
Subiaco's reserves also scored a solid 12.8 (80) to 6.12 (48) victory against East Perth at Leederville Oval.
Ryan Borchet, Tom Edwards-Baldwin and Aaron Breman kicked two goals apiece for Subiaco.
Travis Cleggett gathered 27 possessions for the Lions, Daniel Leach 26 and Ryan Wade 17.
Adam Cockie closed in on his first league game of the season finishing with 23 disposals, nine tackles and a goal.
East Perth had six individual goal scorers while Ben Miller racked up 25 possessions, Matt Young 24, Kye Willcocks 22, Hamish Brayshaw 21, Nelson Waite 20 and Jaxon Cahill 20.