The timestamps being off makes me think something happened with your server time -- that's a big deal if it happens as there are a lot of assumptions that time moves forward only.
If some other counters got set incorrectly, then this could happen. The usual fix is to rebuild thread info, including the position counters and it should resolve this. If you have a very large forum, that could be quite time consuming. There is a "hack" to force it to trigger for only one thread. You can create a new thread and then merge it into this thread. That should force a full rebuild of the target thread's counters/positions.