Weirdly, DS1 refuses crusts on white bread (soft) but eats the crusts on brown bread (hard). Or rather, if he has chosen the bread, which means usually something multigrain or poppyseed, then he will eat the crusts, otherwise not.
I pick my battles. He eats them from the right bread, or in the right company. At four he isn't quite hungry enough for a whole two-slice sandwich, and leaving the crusts is nutritionally better than leaving the middles. Meh. I often use a dinosaur cutter anyway, which removes nearly all the crusts. A child who thinks that sandwiches are boring and that he isn't hungry will often suddenly become hungry enough for a dinosaur sandwich even if it isn't naice ham.