D.P.
I have not used a thermos for that specific length of time, but last school year, I bought my son a small wide-mouthed thermos so he could take meatballs, mac & cheese, pasta, etc. and it worked great!
I would get it ready at about 8:00 and he had lunch at noon and it was still hot.
I would fill it with hot (not boiling) water & let stand for about 10 mins before putting the warmed food in the thermos. A few times he said it was still "almost too hot" so be careful!