From the source code, yes it seems that the format html_page is hard coded. You can only change the option of this format like the template or others pass through underlying format.
it is a wrapper of bookdown::html_document2 and you can change the base_format, using base_format argument. By default, it is rmarkdown::html_document. I believe you can change that.
Also, ... is pass to this base format function. By default, rmarkdown::html_document has a pandoc_args argument that I believe you can use to pass some lua filters script. pandoc arg is --lua-filters.
I believe with all that you can customize and see what is working or not.
Hoping I am not misunderstanding your request.