It's possible that you're getting advertising calls from a company using SIP or VoIP, which means that they're providing their own callerID. (Many accounts like that - like Google Voice - use the actual name and number, but some don't. They'll use "neighbor-spoofing" - using a callerID that's local to you - to increase the probability that you'll answer the call. But they can also leave the callerID blank.)
There's not much you can do about it, except to delete the texts.