OK I seem to have fixed it by going nuclear on the meshes in Maya. I removed the skinning info and deleted history, then redid the skinning. (Luckily this is trivial because this is for a low poly gun)
After all of that, the normals import correctly into Unreal. I must’ve had something weird in the history.
