Blocking a user on Ancestry doesn't stop them from looking at public trees. Blocking only prevents a user from sending you messages.
The ability to block access to selected trees without blocking access to everyone is what a lot (myself included) are asking for.
If you're really concerned about the privacy of your ethnicity you shouldn't have tested with Ancestry. All of your matches will see your ethnicity (or at least what passes for ethnicity on Ancestry). What they won't be able to see due to your private tree is any of the surnames or locations that you may share. They won't see any of the people in your tree.
As for the no tree attached folks. I don't bother with them because I have no clue who in their tree they might share DNA with. Without that knowledge I may as well be grabbing public trees at random from the general population.