Models of human decision-making are just that: models, not the real thing. Another way to put this is to say that models are wrong. As the famous saying goes, all models are wrong, but some are useful. This leads to the question, useful for what? That is, just because a model is useful in one domain, doesn't mean it's useful in another domain.
Case in point: economists. Traditionally, they have been working with a model of rational, egoistic decision-makers. Pretty much everybody knows that model is wrong because people sometimes act altruistically, but the model is useful model for many purposes. The trouble starts when people forget that it's just a model that is supposed to be good for some purposes (and not others) and start to defend the model as though it were an entirely accurate description - a view that obviously does not conform to the empirical evidence.
Bryan Caplan is not one of those people. He points out that altruism is real. Anticipating counter-arguments, he adds:
Sure, true believers in ubiquitous selfishness can grasp at straws to protect their dogma. Perhaps people donate blood for the free cookie, join the army because they might run for office one day, or give to charity in order to make business connections. Or maybe millions of average joes are clueless enough to believe that the blood supply, the safety of the free world, and the availability of charity hinge on whatever they personally choose to do.
Anything is possible, but that doesn't mean that anything is plausible. [...] Genuine altruism is all around us. Benevolence doesn't explain why bakers bake bread for paying customers, but it does explain why blood donors give blood to strangers for free.
Naturally, this prompts his readers to double down on the altruism-is-really-egoism stuff. For example, his reader Caliban Darklock writes:
I suggest that if there exists an incentive, the activity is not altruistic.
If I give a person $10 for drugs, and then I take the drugs and they give me an endorphin rush, that is not altruistic.
If I give a person $10 because it makes me feel good about myself, which gives me an endorphin rush, how is that altruistic?
I traded $10 for an endorphin rush either way. What is the rational distinction between them?
This is generally known as the "warm glow" argument: If you give money to charity, for example, you get a positive feeling ("warm glow") in return. A counterargument to this comes from Jon Elster (cited from memory): If you could raise your future utility by taking a pill that erases all your altruistic motivations, would you do it? Probably not, because you think it would induce you to do things that are morally wrong.
Antoher counterargument that I've just though up: If, for example, giving a person $ 10 makes you feel good about yourself, this already presupposes you're an alturist. If you weren't, it wouldn't make you feel good about yourself. That is, the argument presupposes what it tries to disprove. I guess philosophers have a name for this; I don't.