They cannot force you to take a one hour lunch unless it is for service-related issues (such as late pickups that wont be ready when you arrive due to taking a 1/2 hr lunch.) If you have a mostly residential route, or are able to stay on trace and start your pickups at the scheduled time on a 1/2 hr lunch, then the choice is up to you. We filed a grievance some time ago on this issue and won.
As far as being forbidden from idling the truck to stay warm, you should file a grievance on that one. If they dont want you to idle then they are going to have to allow you to break trace on the clock if necessary in order to find someplace warm to sit, or else provide some other method for providing heat.
The grievance process is there to resolve issues such as these. I suggest you use it.