Municipal fees are also just reflecting supply and demand. Municipalities charge more now because people want to hold a lot more races, they have a lot more people running, and they are on the course for longer. If they didn't charge a lot, then their roads would be closed every weekend, often for races put on by people who don't know what they're doing.
I'm not especially concerned about marathon fees. The way I look at it, I'm devoting an entire season to one event. It's a couple hundred hours of training during the buildup, and I'm wrecked afterward. In light of those non-monetary costs, I'm okay with dropping a couple of hundred on the event itself.
What bothers me is the cost of shorter races. Fifty bucks for a 5k is absurd.