In my webserver, I hold the reference to the client until it is in connected() state and if it is not connected, I call client.stop().
in esp8266 2.4.1 and older is a memory leak with WiFiClient object even if you call stop(), not all memory is returned. take the stop() implementation from source code on GitHub and patch your installation