We have just taken advantage of a new BT free service called Call Protect, see here.
I don't know if it works on all phones but we have a caller id type phone. We have had the same company phone us twice, using different numbers, both are now blocked hopefully. You can also block all withheld or unavailable numbers but our hospital uses witheld so might not use that aspect for now.
However when we get one of those, not from the hospital it will be interesting to see if we can block it.
Have a read, see if it is useful for you.