From the FWIW dept: I've shipped products based on the ESP32 and they remain operational for weeks or months between power cycles so my experience shows that micro-controller is capable of reliable operation.
Regarding what you see: Your description lacks the detail necessary for any real analysis but the watchdog not resetting the device is probably a firmware bug. Since the ESP32 usually depends on an external USB UART for USB connectivity then you need to look at that area of your design, not necessarily the ESP32. Certainly many of the off-the-shelf USB UART chips and drivers are very reliable and used by huge numbers of devices every day without problems. So it's likely you have a bug or hardware problem there too.
Regarding alternatives: There are a large number of alternatives that do everything in your "want" list. You're in the west so you could look at Renesas, ST Micro, Infineon, Microchip/Atmel, TI, Maxim, etc. Many of the manufacturers have devices marketed for critical or safety applications. As you dig in you'll find that most devices have bugs, errata and the like you have to be aware of but won't prevent you from delivering a reliable system.
Regarding advice:
1. Spend the time to understand why something doesn't work. In your case you should understand why the reset isn't occurring and what is going on with USB communication. It may lead your ESP32 based design to success and, in general, it's important to fully understand how a system works. I've seen disasters where the designer didn't fully understand an issue and perhaps included some kludge that appears to fix it, only to be bit hard when there were a large number of devices out in the field. The cost to deal with the issue then swamps the cost it would have taken to really understand and correctly fix the issue in the first place.
2. Avail yourself of information online about how to write good embedded software. Learning to write firmware is a discipline and there are ideas and techniques you should know that will result in performant and reliable code.
3. Engineer the hardware. Don't just put together parts you see on dev boards. You need to know your design will work in all environmental conditions you specify, has no signal quality issues, isn't violating the important specifications of parts on the board, can handle ESD events, meets regulatory requirements, etc. And is manufacturable for the price your market needs.
4. Test, test, test...