Cho Min-kook's side travelled to the Jeonju World Cup Stadium knowing that Jeonbuk had lost just twice in the league on home turf this season.
The visitors still harbour hopes of securing a top-six place and they would have been bolstered had they managed to see out the game for a point.
However, they fell to a 70th-minute goal from Brazilian striker Kaio, who picked an ideal time to end his goalscoring drought.
The former Yokohama and Cerezo Osaka man had not found the net in any competition since a brace against Gangneung City in August, but rediscovered his scoring touch to register Jeonbuk's 50th goal of the campaign.
Despite Ulsan's defeat, the battle for sixth remains wide open after Jeonnam Dragons were also undone by a late winner.
Jeonnam and Ulsan are still separated by three points, although the former came even closer to picking up maximum points away at second-placed Suwon Bluewings.
Leandro Lima cancelled out Santos Junior's opener, but the Brazilian struck again in the 94th minute to ensure Suwon remain five points adrift of Jeonbuk.
Gyeongnam prop up the table as they were the only team in the bottom five not to win.
While those around them picked up important victories, Lee Cha-man's side fell to goals in either half as they hosted fellow strugglers Seongnam.
Jung Sun-ho and Kim Tae-hwan were the men on target, while Sangju Sangmu and Busan I'Park both recorded rare victories.
Sangju had Lee Jung-hyub to thank for their success over Seoul while Busan needed a late Lim Sang-hyub winner against Jeju United.
Elsewhere, Incheon United extended Pohang Steelers' miserable run as Jin Sung-wook scored eight minutes from time to guarantee the hosts a 2-1 win.
Pohang remain third but have not won in the top flight since overcoming Seongnam last month.
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.