Here's an alternate proposal: don't let companies donate to government, but do raise their taxes and provide adequate policing.
Local government are prohibited from taking as much money as they want from local companies by statute, e.g. they can only use property taxes by fair market value.
Think of how bad greater discretion would be. Local governments are quirky and idiosyncratic, and are elected by a tiny number of citizens. They are strongly constarined in their powers by the state for a reason.