What to do against the sniping guards in protected shelters?
Even if you're standing right next to their hideout, I've found that you can't get them with your sword - you have to get them with a ranged weapon. (Apparently Ezio doesn't have the dexterity to stab guards through an open window, or something.) I've had success taking them out with my hidden pistol and with throwing knives. Bombs, while throwable, never seem to work for me, except maybe for obscuring their vision while I line up my shot.
Easiest way I found to take him out is to call assassin's as soon as you have him in your sights and targeted before he takes off. To get close enough I scared him into hiding then targeted all the roof top guards and bunkers (gun men in their blinds) since they're the ones that alert him a majority of the time. Do this followed by returning to a vantage spot out of their perception. Using your assassin's to kill your target also gets you faction challenges, same for when you're clearing out Templars on the roof tops.