If you want to use diferent variants, do /fill x1 y1 z1 x2 y2 z2 planks[variant=spruce].
They should realy fix this bug, it's rare but annoying and will break a lot of maps.
I'm not exactly sure what you mean. I pasted the exact same command to a command block and the shulker didn't fight anything. If you don't want the falling sand block to dissapear, you have to constantly set Time to 1 ( /entitydata @e[type=FallingSand,tag=Block] {Time:1b} )
I believe it was not intended to show half-hearts when damaging a mob in the first place.
In the original datapack where I tested it I got a different crash report:
[media]Similarly to the bug described above the issue was solved by replacing "tag_match" with "block_match" and then everything worked normally.