The question was why giving has to be selfless in order to be moral?
The answer is that logically, if you do not give selflessly, then you have an ulterior motive to give. The two concepts are mutually exclusive.
If you have an ulterior motive, then logically you are not selfless. If morals are attached to conditions then it is moral to have sex with children or animals...depending on what condition you place on it. And clearly that is liberal level nuts.
That was already answered.
You decided to chase your tail instead.