Having just seen the new combat changes coming (hopefully) in 1.9 gave me this idea on how to tweak skeletons so that a simple should cannot completely nullify all their attacks. It is this - a new NBT tag for skeletons called "arrowType", which is decided upon spawning that determines the type of arrows the skeleton will fire. On Easy, there is a 100% chance for this to be 'normal' which causes the skeleton to fire ordinary arrows. On Normal, there is a 50% chance for 'normal', and a 50% chance for it to be either harming, slowness, poison, or weakness. On Hard/ Hardcore, there will be a 100% chance for a special arrow type.
The skeletons of spider jockeys would always fire poison arrows as well.
Skeletons would only have 50% for a non-normal arrow type on Normal, and 100% on Hard. Even if you were on hard, and the skeleton did have poison arrows, it's unlikely that poison arrows will apply poison for 15 seconds - long enough to take you to half a heart, as that would be too similar to witches. It's more likely to be around 10 seconds of effect per arrow. And while armor by it self doesn't protect against potions, armor enchanted with protection does, and it's very likely you'll have at least protection 1 on hard difficulty.