Another thought crossed my mind:
I have occasionally seen watchman trying to watch someone’s entire home directory. This also happened to me once and I think it was around the time I was having trouble with File System Events.
node_modules directories, and watchman is trying to watch the whole tree then it can take forever trying to scan them. At least that seemed to be happening when I found watchman watching my whole home directory. That could cause the symptoms you’re seeing. i.e. watchman not responding in time and therefore rebuilds of your project not working.
Have you tried running
watchman watch-del-all? If so, did it by any chance print out a path that is not one of your Expo projects?