With Lanus draw 2-2 against Boca Juniors, San Lorenzo would have sealed top spot if they had claimed a home win.
The league leaders visit third-placed Velez Sarsfield on the final day as they aim for their first title since 2007.
Lanus missed the chance to draw level on points with San Lorenzo after twice giving away a lead at home to Boca.
Marcos Astina gave Lanus the ideal start with his goal midway through the first half as he placed an Oscar Benitez pass into the bottom corner.
Boca left-back Emanuel Insua set up the 51st-minute equaliser as Nicolas Blandi put away his cross.
Lanus midfielder Jorge Ortiz was sent off just moments later after a late challenge saw him pick up a second yellow card.
The hosts were lucky to get their third as Boca goalkeeper Agustin Orion tried to play out from defence and turned the ball over.
Jorge Pereyra crossed from the right and Benitez was on hand to poke into an empty net on 62 minutes.
Lanus' lead only lasted three minutes before Juan Sanchez Mino's low strike from inside the area beat Agustin Marchesin.
Matias Martinez was shown a straight red card for Lanus eight minutes before full-time after appearing to accidentally kick an opponent in the head.
Velez Sarsfield and Newell's Old Boys also remain in the title race.
A 2-0 win at Colon helped Velez move to within two points of top while Newell's Old Boys' poor form continued with a 3-1 loss at All Boys, but they are the same margin off first place.
Belgrano handed Arsenal a 4-1 thrashing, Tigre overcame Atletico Rafaela 3-1 and River Plate edged Argentinos Juniors 1-0.
Gimnasia La Plata claimed a thrilling 3-2 win over Quilmes, Godoy Cruz were beaten 1-0 by Olimpo while Rosario Central and Racing Club drew 1-1.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.