Some optimizations have already been proposed, see SnapDeals with Reduced Overhead - Adopting alternative Data Commitment. They introduce the use of a different hash function (SNARK friendly) to compute a second commitment tree of the data.
The scenario is the following:
Question: How do one knows that both Comm1 and Comm2 are commitment to the same (original) D without having a prover to (always) compute a really expensive snark or a client to have a consistent proving overhead in computing Comm2?
PoMTT: interactive and off-chain proof of Merkle Tree translation.
That is, before signing the deal offer the Client requires the SP to do probabilistic checks on different random openings of both Comm1 and Comm2.
If the checks does not convince the Client, he will not sign the deal proposal.
PoWMTT: non interactive proof of Wrong Merkle Tree translation.
At a latter time (after the deal is published), anyone retrieving the data D can challenge the SP that the translation was performed wrong at some position. This challenge would be resolved on-chain, by the SP posting a (singe) proof that translation was performed correctly at the given position (i.e. a single MT path in case of commitments done via MT).