Brisbane fell behind at Perth, but substitute Henrique bagged a brace and goalkeeper Jamie Young saved a Diego Castro penalty.
Both Victorian teams head into the finals on the back of a loss.
Victory lost 1-0 at premiers Sydney FC and City slipped 2-1 at Wellington Phoenix.
Bruno Fornaroil continued his late-season scoring run for City to put them in front, but a double to Sarpreet Singh crushed any hopes of a win for the visitors.
City expect to have captain Michael Jakobsen back from a sore thigh for the game against Roar.
Sydney's Brazilian striker Bobo swelled his league season-scoring record to 27 with the only goal of the game at Allianz Stadium on Friday.
Sydney weren't at their best and needed two goal-line clearances from Alex Wilkinson to keep Victory at bay.
Second-placed Newcastle bounced back to form after three straight losses, recording an astonishing 8-2 away win over local rivals Central Coast on Saturday.
Riley McGree bagged a hat-trick and Roy O'Donovan two for the Jets in the highest-scoring game in A-league history.
A hamstring injury to Ben Kantarovski was one sour note for the Jets.
The loss combined with Wellington's win meant the Mariners collected the wooden spoon for the second time in three seasons.
A-League finals schedule
Friday, April 20: Melbourne City (3rd,43 pts) v Brisbane Roar (6th, 35) at AAMI Park, Melbourne, 750pm AEST
Sunday, April 22: Melbourne Victory (4th 41 pts) v Adelaide United (5th, 39) at AAMI Park, Melbourne, 6pm AEST
Friday, April 27: Newcastle Jets (2nd, 50) v highest-ranked elimination final winner at McDonald Jones Stadium, 750pm AEST
Saturday, April 28: Sydney FC (1st, 64) vs lowest-ranked elimination final winner at Allianz Stadium, 750pm AEST.
Saturday, May 5 or Sunday, May 6: details TBC
Morning & Afternoon Newsletter