Definitely sounds like it's time to cut naps. FWIW, in the three years we've been at our Montessori primary (PK3, PK4, K) school, none of the 4yo+ napped. Only a few of the the full day 3yos still do. I'd hope his school isn't making naps mandatory at this age- but, 2 hours is definitely a very long nap for a 4yo.
I agree with this.
I would also put a digital clock in your DS's room and let him know that he is not to get up before (whatever time you deem reasonable) say, 7am. Cover up the 'minutes' on the clock with electrical tape if you need to.