nur mal interessehalber, weil ich gerade darauf stieß - probier mal bei WiFi.config stattdessen
WiFi.config(ip, gateway, subnet); // ohne DNS

bei dieser Zeile hatte ich beim ESP32 auch schon mal Verbindungsabbrüche...