How can I have case-sensitive theme directory names when installed with Composer?

That would be a task for oomphinc/composer-installers-extender. With that you can specify the directory where a package should be installed to. And it’s case-sensitive. Composer otherwise is case-insensitive.

{
    "extra": {
        "installer-paths": {
            "my/themes/Divi/": ["satispress/divi"],
        }
    }
}