My town won't deliver USPS to my street address because they claim I live on a curve too dangerous for deliveries, so like all my neighbors I have a PO box. Of course every other shipping company will deliver to my street address, so it's always an issue to figure out how stuff will get shipped and give the proper address. Add to that, the fact that Paypal will only insure your purchases if the merchandise is shipped to your official paypal address. And,... then there are plenty of ebay sellers who will only ship USPS, but won't ship to a PO box..... It's a pain in the ass! It makes for situations just like yours, so I feel your pain...
My solution worked out by using this as my address for shipping:
My Name
My street address followed by "/PO Box #"
Town, State. Zip code
If the regional postal worker sees my zip code, then it goes to my town. If the town postal worker sees the "/PO Box #", He puts it in my Box. I use that "street address/PO Box#" as my paypal official address, so I am covered either way. If the seller pulls the shipping company switcherooo, my compound address usually works for whoever he changes the shipping agent too...
The only thing I think is weird that doesn't effect online purchasing is that the state of washington uses your official USPS mailing address for your official driver's license address, so the address on my drivers license is a PO box #.... So, I live in a PO Box...??? really ??? too stupid... but I deal with it.