completely enclosed run is the only 100% way to keep them out. I know this from experience. I too was feeding my chickens & ducks and watched with aw as 20+ sparrows would swarm the dishes even while the flocks ate. At first I thought it was just annoying but later I wish I had taken the extra precautions to kept them out. Sparrows are one of the top carriers of mites, lice and diseases that will infect your flock. To me sparrows need to be put on the predator list not pest list.
I don't like using those fake owls and hawks because I didn't want my flocks to get used to a predator sitting on a fence and feel safe. People have suggested using things that will move like old CD's hanging over the feeding area, but this doesn't work to well if the wind isn't blowing.
I'm in the process of building a completely enclosed run for my new chickens coming (had to get rid of the last flock due to a disease brought in by the sparrows). I'm going to let them free range too but the food will be in the run only. I'm even taking steps to make sure the pop door to the free ranging yard is sparrow non-friendly.
Yes I know that free ranging them will allow them to come into contact with the sparrows but not so much as the huge amount of poop and direct contact that the sparrows were doing at the food dishes.