Here’s a big argument that not many people may know or understand.
If a sinner is let into heaven, they will corrupt heaven with sin, essentially sending the entire creation into a hell like spiral.
Also, God can’t be around sin, so he would eternally be separated from his own creation.
So, God could annihilate, but it is against his nature, because he doesn’t revoke any of his gifts. He is a creator, not destroyer.
So, God’s only choice is to punish and quarantine evil and sin.
His punishment is just, because of the repercussions.
Now let’s say God let’s someone out of hell in 1,000 years, what would prevent them from being rebellious towards God again? If the consequence doesn’t last, what would stop them from sinning, if they knew they would keep getting out of jail by God?
Therefore, the punishment has to be eternal.