In realtà ti dovrebbe basta re aggiungere una qualche gestione dell'errore per verificare l'avvenuto timeout.
Qualcosa del genere:

Codice PHP:
$curl curl_init();
$timeout 40;
curl_setopt ($curlCURLOPT_CONNECTTIMEOUT$timeout);
curl_setopt($curlCURLOPT_PROXY$ip_server);
$risultato curl_exec ($curl);

if (
curl_errno($ch)) {
    echo 
curl_errno($ch).": ".curl_error($ch);
}

curl_close ($curl); 

In pratica con curl_errno() puoi verificare un eventuale codice di errore restituito CURL ERROR CODES e, se il codice corrisponde al connection timeout agire di conseguenza.