Is there a way to remove the sour taste from hearts of palm (which, I assume, are not sour intrinsically)?
I tried washing them off and then roasting them, but that didn't help, they were still sour.
Typically, hearts of palm are canned with citric acid, giving the sour taste you are referring to. Unfortunately, there isn't an easy way to remove most of the acid they are canned with.
You can try soaking them in a mild brine (water and salt) which can help reduce the concentration of the acid in the heart. Salt also counteracts perceived acidity in an ingredient - not actually changing the PH of the ingredient but it makes the acidic taste less noticeable. A light sprinkle of sugar will also help reduce the perceived acidity and can add to the flavor when grilling (think of Brussels sprouts cooked with a bit of brown sugar).