Since your data is not in reprex and is difficult to just copy-paste, I'll give you a somewhat general advice with code that is close to what you want:
df %>%
dplyr::group_by(Patient_ID) %>%
dplyr::arrange(Visit_DateTime) %>%
dplyr::mutate(last_visit = dplyr::lag(Visit_DateTime)) %>%
dplyr::mutate(diff = difftime(Visit_DateTime, last_visit, units = "days")) %>%
dplyr::ungroup() %>%
dplyr::filter(diff > 365) %>%
dplyr::pull(Patient_ID)
The main idea is that you can use lag function from dplyr to create a column with the last visit and from there it should be relatively straight-forward to apply logic about 2 consecutive years.
The way I did it above is to use 365 days as years, but you can also extract years directly with lubridate::year and compare them directly. Since it is not obvious what you mean by 2 consecutive years then you can use either approach.