The problem is that the government wields sufficient power that it's (very) cost effective for those who have sufficiently deep pockets (corporations, unions, other special interests) to woo the legislators for special privileges and rent seeking.
On the other hand, while voters collectively could wield power to counter this, it's diffuse, and any one particular voter has approximately zero influence, and thus has little incentive to make the significant investment in educating himself about what's going on. Thus, the electorate is generally ignorant (and rationally so), and does not know about (most of) the shenanigans going on with their government.
I think the real issue is democracy, no matter how well executed, really just isn't that good at protecting citizens from tyranny. Laws that ensure freedom and privacy are all good and fine, but they will never compete with math that ensures privacy and freedom.
Even were we to devise the perfect system of governance, advancement in technology to ensure the situation would still be essential.
Unfortunately I doubt that the USA is sufficiently democratic for that to work. So a better solution would be to write software that makes it a lot harder for governments to know what people are communicating on the internet.