対策として、SPSETで管理番号を取得するのではなく、SPUSEDで使われていない管理番号を探しだし、スプライトを作成する前にパーツの情報を保管する方法。あるいは、パーツに対してSPOFSやSPLINKで結合する際に、SPCHRで再度SPDEFの情報を読み込む方法ですね。今回は後者で解決しました。