People can be absolutely ridiculous - expecting something for free! While I do think over $1000 for a dog can be a bit much, $300 is a GREAT price, especially since you are not an experienced breeder and probably didn't do much testing, etc. I think that's a perfect price in your situation and actually very cheap for a Yorkie. The fact that someone wants a yorkie or any dog for free is insane. '
By the way, tails can only be docked VERY early on or else it would be extremely painful. I think they do it when the pup is between 2-4 days old or something but I'm not a breeder, could be wrong on the age. So, if they're past that, that options already gone. I have a full-tailed Yorkie and I love it.