Difference between 不了 and 不到
The differences are contextual. I do agree it is very subtle. 

到 is used when the verb, (action), produces a response from a purely physical perspective. Whereas, 了 is from a non-physical moral, legal, ethical standpoint.  

So, in 收不到 vs 收不了, the former connotes the physical impossibility of receiving whatever is sent, perhaps it was physically destroyed in an air accident; hence 不到, (physically not arrive) The latter connotes the non-physical inability or refusal to accept for some moral, legal, ethical reason; perhaps it was seen as a corrupt bribe, hence 不了, (can't)

Here is an example to illustrate the point further:-

(a) 起不了 vs (b) 了不起   

The former is physically impossible to rise up.

The latter means something amazing or superlative.