I knew you’d be across it, John!
Though I’m not sure I would call it a hack. It seems cleaner than having to explicitly pass an ID to every call to the_field/get_field?
Speaking of which, I just ran across a similar problem when using ACF Post Objects inside ACF Gutenberg Block render templates:
https://support.advancedcustomfields.com/forums/topic/post-objects-setup_postdata-and-get_field-in-acf-blocks/
I am interested to know if this is something you’ve come across before John?