If a person is homosexual and even promtes this act, but he is unwell, can charity be given to him

Yes charity can be given to such a person as long as you do not support his homosexuality in any way. But if he needs humanitarian help then he can be given such help.