Using add_action before add_filter on a plugin?

It doesn’t matter the order in which you call add_action() and add_filter().

What matters is the order in which the corresponding do_action() and apply_filters() are called.

So, if apply_filters('wp_insert_post_data') is run before do_action('save_post'), tough luck. You’ll have to think of another way to achieve the desired result.