Problem is, saying it's OK when you're down by X amount of runs, but it's not OK when you're down by X amount of runs, is all too arbitrary in my opinion. What if a team has an explosive offense, and is capable of putting up 6 runs or so in a heartbeat? Are they allowed to bunt, to maybe get a base runner and kick start their offense? How about in the fifth inning? Sure, it's not really late in the game, but you'd be breaking up a potential no hitter/perfect game.
This is the main issue with this rule, and most unwritten rules for that matter. They're entirely subjective, and what's OK to someone, isn't OK to someone else. With that being said, how you can hold some accountable for breaking a rule that isn't a rule to some, but is to others, isn't fair to the batter. This is entirely too inconsistent, subjective, and arbitrary for me.
Lastly, I wanted to address italstallianion's point about hitting the other batter in the head. Besides the obvious implications of what you're advocating, this is also very inconsistent because you're standing behind one unwritten rule (not bunting to break up a no hitter), but ignoring another one (not throwing at a batter's head or legs).