Has this been solved?
I’ve had issue with this limit as well with my current project. You definitely want the compiler optimization on. If you toggle optimization on and off the code size will change (if it doesn’t you should look elsewhere for the issue). Breaking up the contract has not worked for me in the past, as inherited code gets injected in the contract to be deployed. Using an EVM seems like a solution, or deploying multiple contracts that call each other. My issue was that I was compiling without optimization, when I engaged it I was able to deploy a contract with a lot of code in it. So unless your contract is very large, which it doesn’t seem likely from the imports listed above, there may be another issue.
Have you put the contract in Remix and played with different complier versions?