The sanitize light doesn't come on when the water isn't heated enough. It can be caused by excessive suds. The dishwasher can run for hours if the water heat cycle is malfunctioning. The water heat cycle is working according to the description you gave.
Let's Get It Fixed!
HomeX virtual experts will assess your issue (for free!) and can resolve simple problems.