Вы все еще можете сделать что-то вроде того, что у вас есть в вашем описании. Хитрость в том, что вместо проверки того, находится ли изображение в локальной файловой системе, вы должны проверить, доступно ли изображение на удаленном сервере.
Вы можете использовать что-то вроде:
$image_headers = get_headers('http://static.domain.com/image.png');
if (false !== strpos($image_headers[0], '200'))
// echo image tag if the response's status code is 200
Конечно, постоянная проверка связи с удаленным сервером является дорогостоящим процессом. Поэтому вы можете захотеть сохранить локальный список изображений, доступных на static.domain.com