Set up functions to be overridden without using function_exists() by short-circuiting them?

First, please avoid doing echo on filters. Cause filter are not designed the way to handle echo. They are designed to take a parameter or input and modify or manipulated inside the hooked function and send it back to the parent function. If this filters don’t return data then there is a huge chance to get broke the WordPress life cycle.

Secondly, there is a significant difference between do_action and apply_filters. do_action does define a flag where you can add some functions to execute. It’s kinda putting some extra functions in that point to execute. Where what apply_filters does is to define a flag from where you can get some data, then modify or manipulate it then return it to the parent. This way you can manipulate the data.

Lastly come to your point on use the $null value. Well, if you read the apply_filters documentation then you can see that the first parameter is the values which we need to modify and the other variables are the additional parameters or arguments. So for modifying the value first you need to get the value inside the function. And as it is required, so you can’t escape it. And also you can’t break the order of the value and arguments when inputting them to the hooked function cause it takes the input value and argument as the order, not as the name.

Hope that above helps.