Sidewalker is correct, you can't recreate the whole economy in miniature for the government. If you steal funds you're going to end up paying some private entity somewhere.
Grey parrot is correct, you can't stop a company from lobbying. They don't need to donate to a campaign, that's just the easy way. They could also run propaganda campaigns directly or through non-profits.
The solution is to stop stealing money.
A more detailed solution in that family of solutions would be to have the people directly pay for the government services they need or care about. Execution to be carried out by a case by case 'project triarchy' randomly selected from a pool of the twelve highest vote counts. Votes are proportional to fees or contributions.
All deliberations of each project triarchy are to be recorded and public under severe penalty. When a subcontract is required bids over a certain proportion of the total budget can be overridden by the stakeholders.
Lobbying potential triarchs would be inherently inefficient compared to the current problem for three reasons:
1.) The people control the flow of the money, not just in general but towards a specific project. If a lobbyist can't deliver, they won't get paid. This stands in stark contrast to the current state where the "leader" the lobbyist got elected decides whether to pay more and keep paying.
2.) Three are harder to corrupt than one. The random element means there is a one in 4 chance of getting someone you didn't support even if you picked winners and supported three candidates.
3.) If there is a suspicion of lobbying, the stakeholders (the general public for most intents and purposes) can prevent the corruption, giving the paid off triarch a perfect excuse and further making the act of lobbying a dubious investment.