I think they must have patched that issue with behaviors; I ran a couple more tests to see if stacking the behaviors/having multiple units gathering broke anything, and it all seemed to work fine. I set the search launch to source like you said, and attached an actor to it to see if it behaved, and sure enough it did. It turned out I'd made a dumb mistake with the target sort that was also making things break. And yeah, testing the validators one by one in a simple ability revealed the issue (stupid requirement-type validators check the inverse case by default...).
Thanks again for everything :).