This is a complex scenario to deal with directly in the sql. It might be possible but I'm not sure how you would structure it.
I think it might be best to have a third table to help you organize all of the messages. When a message or comment is inserted you would insert a new record into this table to record the time, the message id and comment id. In the end this would give you a table that has all of the posts organized by the order they were added. Populating this table with the existing records would put you in about the same scenario you are in now though.
This is not an easy problem to solve. The alternative would be to use some php code to hold the data from both tables then sort the data and use that as your order of the records.