That behavior doesn't make much sense - the domain of the sender
shouldn't make any difference, and certainly whether they are in a
sub-domain or should not. My best guess is there's a routing issue
somewhere along the line for the sender domains that doesn't work. Are
you sure the ones that fail are not sub-domains of the same domain you
are sending to? If so, that wouldn't be all that uncommon, as getting
those settings right for mail delivery tend to be trickier than for
outside domains.