ACFで入力値に対して何か制限をかけたいときは acf/validate_value (ACF)というのを使えばいいのですが、これは2つ以上のフィールド同士の相関関係では使えないみたい。
ACF PROで複数のfieldを絡めたバリデーション(前編) を参考にやってみたのですが、肝心の比較対象のフィールドの値を取得するのがうまくいかなかったので悩んでいたところ、
そういえば『Aの投稿の中身の変更に応じてBの投稿の中身を書き換える』という目的で作った関数 get_new_acf_value() がそのまま使えるじゃんということで出来上がったのがこちらです。

ちなみに、自分はACFのグループフィールドを使って入れ子構造にしているので、それにも対応しています。
繰り返しフィールドでの動作確認はしていませんが、たぶん $target_field_arr の中に階層を指定する添え字を入れればいけるんじゃないですかね。


//--------------------------------------------------------------------
//2つのフィールドの日付を比較して入力制限をかける
//--------------------------------------------------------------------
function my_acf_validate_value( $valid, $value, $field, $input ){
	
	// bail early if value is already invalid
	if( !$valid ) {
		return $valid;
	}
    //POSTされた『現契約終了日』の値を取得
    if( $value !== '' ){
		$target_post_id = ( !empty( $_POST['post_ID'] )) ? $_POST['post_ID'] : ""; // もしくは$_POST["ID"]でもいいかも
		if( !$target_post_id ){ return $valid; }
		
		$start_date = get_new_acf_value( array( 'group', 'enstart-date' ), $target_post_id );
		
        //『開始日』より未来ならNG
        if ( new DateTime( $value ) < new DateTime( $start_date )) {
            $valid = '終了日( ' . date( "Y/m/d", strtotime( $start_date )) . ' )より後の日付を入力してください。';
        }
    }
	
	// return
	return $valid;
}

add_filter('acf/validate_value/key=field_*************', 'my_acf_validate_value', 10, 4);


//--------------------------------------------------------------------
//フィールド名と投稿IDから現在保存しようとしているACFフィールドのvalueを取得
//--------------------------------------------------------------------
function get_new_acf_value( $target_field_arr, $target_id ){
	// 保存前のACFフィールドデータがない場合は終了
	if( empty( $_POST['acf'] )){
		return "";
	}

	foreach( (array)$target_field_arr as $target_field_name ){
		if( empty( $target_field_txt )){
			$target_field_txt = $target_field_name;
		}else{
			$target_field_txt .= "_" . $target_field_name;
		}
		$field_key = get_field_object( $target_field_txt, $target_id )["key"];

		if( $field_key && !empty( $_POST['acf'][$field_key] )){
			$get_input_value = $_POST['acf'][$field_key];
			$get_input_value_check = true;
		}else{ 
			$get_input_value_check = false;
		}
	}

	$return_data = ( $get_input_value_check ) ? $get_input_value : "";

	return $return_data;
}

get_new_acf_value() については 保存前のACFフィールドのvalueをフィールド名と投稿IDから取得(入れ子対応) を参照してください。