Hiya
My DS is touchy & he was also a chronic EWer. What I have found is that EW is strongly linked to the timing of the nap, so if the nap is early, they wake early. At this age they need approx 5.5-6hrs A time before nap, however, if you continue to base his nap on X amount of A time after he wakes up, the nap will stay early (i.e. he wakes at 5am & does 6hrs A so nap is at 11am).
The way you need to look at it is this: if I want him to wake up at 7am, then he needs to take his nap 5.5-6hrs later i.e. between 12.30-1pm. So you need to work on getting his naptime shifted later. Given he is touchy, I would suggest going very slowly, pushing it 15mins later per week, to keep OT to a minimum. Be consistent, and stick with your naptime i.e. 11.15am on week 1, 11.30am on week 2 & so on, even if this means a super long A time some days. Eventually his wakeup time will get later. It may take several weeks, so be prepared for that, and there will most likely be some OT, but if you ride it out his bodyclock will adjust. I had to do this exact same thing with my ds, & we went from a routine very similar to yours, to wakeup: 7am nap: 12.30-2.30 and bedtime 7.30pm so it does work I promise!
WRT nap length, yes I would still let him have his usual 2hrs. As for bedtime, leave it at 7pm until the nap starts at 12 midday, if he starts to resist you may need to shift it a touch later i.e. 7.30pm.
HTH.x