The error message is coming from within the network stack inside of ASP.NET's hosting components, and errors like this tend to indicate problematic underlying infrastructure, such as drivers, hardware/memory. They are often quite rare and not reproducible, and thus can be difficult to diagnose or debug.
The Integrated Web Server was not designed to handle problematic infrastructure, and as such will simply crash when receiving certain "impossible" scenarios from the network stack. Certain errors are not safe to try/catch (because they imply a corrupt process memory state), which is why they are done.
If you are finding "service autorecovery" not enough, then you should switch to IIS hosting. IIS is very robust, and uses a worker process model and can handle a lot of these underlying problems. When a worker process crashes (which it will do in the same scenario -- unsafe exceptions), IIS will spin up a new one almost instantly.