I actually don't know any official Christian teaching from any church that suggests heaven is a reward for doing good. From Catholicism to Orthodoxy to Lutheranism to Baptists Christianity insists that our reconciliation and life with God in the world to come is an act of grace, a gift, something that is not awarded to us for doing the right things, but that God graciously and kindly takes us and accepting us brings us to Him.
That said, a lot of Christians are theologically illiterate.
Absolutely. And that's the only reason to do good works. Because good works are good.
In Lutheranism we have what's called the Law and Gospel Dialectic, in short this says that what God commands is Law and since we are sinners we never truly act obedient to God's commands but fail regularly; and what God gives freely, what God promises, is Gospel. In essence: The Law in declaring what is good and right reveals that we have failed to be good and right; the Gospel is God's promise and word to us that He has forgiven us, that He loves us, and that in Jesus we are accounted righteous.
I bring this up only to really discuss another point. What Lutheranism tends to refer to as Coram Deo and Coram Hominibus. That is, "before God" and "before mankind". Think of it as a vertical and horizontal, the Coram Deo is vertical and the Coram Hominibus is horizontal. Before God (Coram Deo)the only thing that should truly matter to us is the Gospel, God's gracious kindness freely given to all through Jesus in which and by which we are forgiven and restored. Before our fellow man (Coram Hominibus) we should consider all that matters is the Law, what God commands us to do.
In essence this means that I do good works because while they don't improve my position before God, I don't receive any reward from God for good works, but good works do benefit my neighbor. It's my neighbor who needs bread to eat, water to drink, medicine to tend his wounds, clothes to cover him, shelter over his head, and an arm of friendship and kindness. God doesn't need my good works, but my neighbor does.
The only reason to do good works is because they help my neighbor, because good works are good and thus should be done. I receive nothing from God for doing good. Indeed my good works compared to God's commandments reveals my total failure; and my good works in light of what God has already done for me in Jesus renders at best redundant.
-CryptoLutheran