I know full-app embeding can support filter hiding. Why public dashboard sharing doesn't support that? It's way easier to do the public sharing then full-app embedding. I feel the ideal experience is to allow user to configure a filter's display/hide via its configuration panel and that configuration applies to all sharing method be it public or full-app.
Signed embedding (which is not full app) supports hiding filters (full app embedding does not). I would suggest you check that feature Signed embedding