Answer
This points to the import process not completing cleanly in one pass for very large permission sets (possibly related to file size or the import's own runtime). A workaround that's worked in practice: run the XML import once to create the initial (incomplete) permission set, then re-run the same import again choosing the 'Merge' option instead of a fresh import, repeating Merge-mode imports until the only errors reported are ones you'd genuinely expect (like references to projections that don't exist in this particular environment). Each subsequent Merge-mode import runs noticeably faster than the original import, and repeating it until only expected errors remain has produced a clean, fully-granted clone of the source permission set.