Access ACF fields within custom preview function?

As documented, the preview_post_link passes the post object as the second parameter. You can use this to get any fields that you might want:

add_filter(
    'preview_post_link',
    function( $preview_link, $post ) {
        $custom_field = get_field( 'custom_field_name', $post );
        
        return $preview_link;
    },
    10,
    2 // MUST be 2 to get the $post parameter.
);