I’ve seen this behavior reported here before, but I’ve not seen a solution that works for everyone because I’ve never been able to recreate it.
Usually, 90+% of the time, when get_field() is not returning the correct value it is due to some other filter on your site. Most of the time it is a pre_get_posts filter.
The best advice I can give you is the standard WP shtick, disable plugins and switch themes to see if you can figure out what might be interfering.