Shield clearance with thru-hold devices

How about changing up the design a bit. Nothing says an arduino shield's PCB has to be the same dimensions as the arduino. If you consider the USB header the front of the board then have your shield hang off the back end more. Sometimes that small PCB size is just too limited to hold everything you want to get onto it.

Another option would be to mask over the solder joints that sit above the USB header. Many high end electronics have to use a strip of electric tape or hard plastic over some items to avoid shorts between said items and solder joints.

The pins don't have to bottom out on the headers to make a good connection. For the most part the plastic bases of the header pins should offer enough clearance. That is if extra care is taken to keep the solder joints neat and trimmed.