The #replaceable tag allows certain blocks to be replaced when trying to place a block on them. With almost all entities you can place they don’t replace replaceable blocks they just go inside them. End Crystals do neither and if there is a replaceable block in the way of placing an end crystal, it just won’t place.
End crystals are entities, not blocks.