Arduino gives up / Flooding ethershield?

Looks like it dies on opening a new connection. I modified the client.connected while loop to print a message on failed connection as that was the only place where it goes into an endless (halted) loop without flashing an LED and sure enough, that was the location where it was dying.

So the last thing on the serial monitor is "Request: " and you request string? Is it printing the connected and disconnected messages correctly until then?

edit: Sending a request every few seconds will not flood the server. Not reading the response completely and not closing the connection correctly (like your original code) will leave the socket open. You can do that 4 times before it fails on the fifth attempt.