Wing it.
While all the places mentioned are worth seeing, my best experiences in Germany have been in small towns or cities. They will all have Christmas Markets and fewer tourists will make the experience better and prices less.
A car would be very handy if going to smaller places.