refreshCustomModel
Re-spawns the FMM display entity attached to this NPC. Called after FMM reloads — its onDisable tears down every DynamicEntity, so our cached customModel now references a destroyed display entity and the NPC is invisible to viewers. The underlying Villager survives the FMM reload, so re-creating the display on top of it brings the visual back without disturbing AI / pathing / metadata.