Include the stalking rule. Shorten it and tighten it, basically use simpler words - ths means that Tony cannot tell you that Buck didn't follow the rule because he couldn't read it. We know Buck can, Tony won't admit it. Play to that.
You say laundry on Sunday. This needs to be every other Sunday or he will be there every Sunday and he will argue that it doesn't count as his one visit every other weekend.
Call the cops on him every time he breaks a rule. Make sure you tell the cops that this man who came in or is lurking on your property is someone you know has warrants in SC and possibly elsewhere AND that he does not have a valid driver's license. EVERY SINGLE TIME he leaves your house driving, call the cops and report an unlicensed uninsured driver who is driving this color, and style of car with this license plate. Make double sure they they know he is known to be addicted to pain medications and anything else you suspect.
The cops will be far more motivated to come get him if you do these things. when you call the cops, do NOT warn Buck or tell Tony. Just go into your room or the bathroom and use your cell phone and dial 911. If he has left, call the non emergency number. Program it into your phone.
Post no trespassing no loitering and that violators may be shot. If you shoot, make sure you know what the law is in your state. meaning do you have to drag him over the threshold to make it legal or not, pretty much.
I am SO PROUD PROUD PROUD of you for standing your ground and tossing him out. This is beyond creepy - I cannot imagine waking up to find someone sitting in my yard waiting for me. It is one thing if we have agreed to go yard saling, but that is the ONLY time I better find you on my property at that hour.