Enabling PN Triangles or Crack Free Displacement causes default material to appear on certain meshes

When a material is rendered as the default material it means the material did not compile correctly. Normally you see these errors in the material editor, but considering it works on the other object there is something else causing the problem.

Are they potentially using the same base material, but different material instances with different settings? If so you might want to open the material instance and check for any errors there.

If that doesn’t solve it: are the meshes both of the same type? Materials need proper usage flags for different mesh types. Normally the editor should properly set these automatically, but when this goes wrong it could also have this effect.

Finally you could try setting the preview mesh of the material to the problematic mesh, this should allow you to debug the material directly in the material editor, which should make finding the cause a bit easier.