Hi，@jake72, just take a look at your project
Indeed it's related to the animation, your animation rely on single color sprite frame, so does the background in the scene.
When you release the prefab and all its dependencies, you release the single color sprite frame, which cause the background trigger the gl error.
The solution is to eliminate the single color texture / sprite frame.
The reason that it's working on native is because native has a reference count system, it won't release the gl texture unless nothing is using it. But on web, we can't have the same system because JS doesn't expose its destruction process, so we decide to delete gl texture when user release a texture asset, otherwise it could be a gpu memory leak.