Ilves startade matchen bäst och tog ledningen tidigt i matchen. Petteri Pennanen slog till, redan i 16:e minuten.
Haka kvitterade till 1-1 i 23:e minuten, genom Elias Mastokangas. Haka gjorde också 1-2 i 69:e minuten när Stavros Zarokostas hittade rätt.
I 75:e minuten kvitterade Djair Parfitt Williams för Ilves på pass av Tuco.
Det matchavgörande målet kom med fyra minuter kvar att spela, när Lee Erwin gjorde 2-3 för Haka. Det fastställde slutresultatet till 2-3.
Ilves har en vinst, en oavgjord och tre förluster på de senaste fem matcherna, medan Haka har tre vinster och två förluster. Det här var Ilves sjätte uddamålsförlust den här säsongen. Det var även Hakas sjunde uddamålsseger.
Med två omgångar kvar är Ilves på åttonde plats i tabellen, och Haka är på fjärde plats.
I nästa omgång har Ilves KuPS borta, lördag 3 september 17.00. Haka spelar hemma mot FC Honka torsdag 1 september 18.00.