I've solved it. I can't share the code cos work but ... You can pull a list of material indices by face ID from the layers on an individual fbx node's geometry, once you've got that you can edit the material indices to point at whatever material you want on a per face basis turns out to be fairly straightforward as long as…
It's a good shout - I've considered it (albeit with maya's equivalent) but the time cost of just spinning it up is orders of magnitude greater than all the tasks my code already performs so the idea makes me a bit sad :(