I would like to ask if runsvdir could by default be defined as a subreaper on Linux.
You are talking to people well versed in the idea of chain-loading programs for affecting process state. The answer here is to simply run runsvdir through a chain-loading program that sets the process as a subreaper.
You could write your own, or use the one that I wrote, packaged up, and published. I called it "local-reaper".