This is one problem. I also see it as a somewhat unfair system. Church giving is voluntary. So some may give a lot, but many give nothing. In this regard, the Atheists and non-church-goers will benefit financially.
Correct, and let me just say as an Atheist myself I don't want that benefit.
But, it's worse than that. You see by putting the burden of covering things like welfare, education, health care... down to smaller levels like states, cities, or even churches you're ignoring one of the most fundamental concepts in Economics. That being Nash Equilibriums.
You see the same states who are focused on paying for welfare, education, infrastructure, health care... are also in competition for jobs and for wealthy citizens. They need wealth citizens and corporations to help them generate the wealth necessary to pay for these things. But the smaller the scale you're working with the more you increase the likelihood that a selfish person can escape the burden. If a city wants to build a new school, for example, wealthy citizens without children or children going to private schools might move to the next town over to avoid the property taxes for that school. They could move 15 miles down the road, and still be able to commute to their old job, still see all their friends and family, but avoid the tax. This makes it very hard for towns to raise the tax revenue they need to pay for things like this without losing the high earners they need to collect taxes from.
At the state level, this is a bit easier. Someone deciding to up and move to a different state is much more difficult. The distance alone could separate you from friends and families. A business may not be able to convince high-quality employees to move with them. But as we've seen from new businesses like Amazon, for instance, they can demand huge tax deals in order to put their headquarters in a specific city or state. So long as their goods can be shipped across state lines without issue there is no reason for them to pick one state over the other and can put their headquarters where ever they think they'll get the best deal.
That is why ultimately most taxes need to be collected at the federal level. They can be re-distributed back down to the states, but they must be collected federally because it is only at the federal level that we have a meaningful ability to punish businesses who try and leave the country and ship goods back in. It's also significantly harder for an American citizen to up and moves their business to an entirely new country. The distance and unfamiliarity alone is a problem, not to mention there's no guarantee that the new country you move to won't have other laws you don't like.