Si la imagen la estás copiando en la misma cuenta del servidor, no hace falta usar ftp.
Le pondria la ruta completa a la variable $archivo, asi:
Código PHP:
$archivo = "html/casas-rurales-avila/fotos/".$id_casa . '_' . $id_foto . '.jpg';
y luego imagejpeg directo lo copia ahi.
Si usas FTP porque estás copiando la imagen a otro servidor o a otra cuenta, entonces grabaría la imagen localmente en la cuenta que ejecuta este script php, en un archivo temporal, y luego copiaría ese archivo con ftp. No trataría de que imagejpeg directo la genere en el otro servidor.
-ronnieb