Have a look at the File Nesting extension provided by Mads Kristensen, if you haven't already. According to the description, this allows you to both manually nest files and set up your own rules for automatic nesting.
You can just search for this under the Visual Studio Extensions and Updates component.
EDIT: According to the known issues, this is not supported in all project types:
Due to missing or limited support for file nesting in certain project types, this extension will have no effect or be disabled. The project types are:
Node.js projects (NTVS)
ASP.NET Core (has built in rules for nesting)
Apache Cordova
Shared projects