Perth scored in the 35th minute from a Richard Garcia header after a Diego Castro free-kick.
Roar levelled in the 57th minute when a Brett Holman shot deflected from Glory defender Lucian Goian.
Glory had the last say first with Andy Keogh's 11th goal of the season in the 67th minute. Then a strike from Rostyn Griffiths on the edge of the box sealed the win.
A concern for Glory was Castro coming off in the 50th minute with a calf complaint.
Brisbane weren't going through the motions, but were down on manpower.
Thomas Broich, Avraam Papadopoulos, Michael Theo and Thomas Kristensen were all rested with an eye to Wednesday's home Asian Champions League match against Kashima Antlers.
Perth Glory's star import Diego Castro and Socceroos defender Rhys Williams could both leave the club at the end of the A-League season.
Glory made much of the play in the first half and it was rewarded with a goal to the almost forgotten Garcia.
Making his second start of the season, he knocked on a header expertly from a delightful Castro free-kick. That was Garcia's first goal of the season and fifth in three seasons with Glory.
Roar were doing some nice things on attack. That paid off with Holman's shot that deflected off Goian to score.
Perth answered with Keogh's goal in the 67th minute. He volleyed a terrific cross from Josh Risdon to put Glory ahead and the win was sealed with Griffith's strike nine minutes later.
Perth finish their season at home next Sunday to Melbourne City needing to win by seven goals to move into the top four.
Brisbane plays Wellington Phoenix following their ACL match on Wednesday.