A second-half double from Lee Jung-Ho ended Ulsan's run of six consecutive wins as Busan came from a goal down to secure a memorable victory.
Victory for Kim Ho-Gon's side would have secured their first title since 2005 but instead they face a title-deciding match against Pohang Steelers on Sunday.
Pohang moved to within two points of the leaders with a 3-1 victory over Seoul earlier on Wednesday, a 13th minute strike from Kim Seung-Dae and a double from No Byung-Jun enough to secure a 20th win of the season and set up a thrilling campaign finale.
Elsewhere in the Championship Round, Suwon Bluewings ended a run of five consecutive defeats as they beat Jeonbuk Motors 1-0.
Santos' 90th minute strike secured the three points for Seo Jung-Won's side, and leaves Jeonbuk and Seoul with a straight fight for the third and final AFC Champions League spot when they meet on Sunday.
In the Relegation Round, Daejeon Citizen's valiant attempt to rescue their season ended in vain as a 1-1 draw with Gyeongnam saw them relegated from the top flight.
Han Kyung-In had opened the scoring for Daejeon in the 77th minute as they looked on course to record a fifth straight win, however an 82nd-minute equaliser from Kang Jong-Kuk sent them down.
The point was enough to secure Gyeongnam's place in the top tier, but Gangwon missed the chance to secure their own safety, drawing 2-2 with second-bottom Daegu.
Choi Seung-In's late double rescued Gangwon from two goals behind, and they will now need a positive result against Jeju United on the final day, although defeat for Daegu at home to Gyeongnam will secure their place in the relegation play-off - in which they will have another chance to preserve their top-flight status against Sangju Sangmu.
Seongnam ended their campaign with a 1-0 victory over Chunnam Dragons, Kim Dong-Sub's strike nine minutes from time was enough to secure all three points for the visitors.
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.