Editing datafiles. Either...
a) Cannibalize a (s3d-based) race you don't care about and modify the ship's ACTORDEF string in oot_chr.wld to use the 3-letter id for that race instead, effectively remapping the ship's race id.
b) Rip the fragment data and textures for the ship out of oot_chr.s3d/wld and into butcher_chr.s3d/wld. The wld fragment data is a bit tricky since you'd need to correct a bunch of internal pointers.
c) Rip the fragment data and textures for the ship out of oot_chr.s3d/wld and into their own stand-alone s3d/wld, which you can then maybe reference in butcher_chr.txt without crashing (it's not clear why some things crash for one method and/or zone but not another...). I think I had a crappy utility that did something like this..?
S3D Model Extracter I don't remember how it works and wine doesn't seem to like it so I haven't re-tested it.
d) As with a), but convert the ship's model data to one of the eqg formats and cannibalize an eqg-based race instead of an s3d-based one.
None are great solutions unless you have a patching system in place, preferably one that will allow you to execute a little fixup program on the client's end to avoid distributing data files themselves.