lowering the blocktime really doesn't mean anything as u would need to wait for more confirms for the same certainty. also the blocksize limit/scalability would have to b replanned too
BCH's frequent slow blocks is the outcome of low relative hashrate and swing mining.
This can only be solved with a hashing algorithm change.
Somewhat of a workaround would be to refine 0-conf adoption/acceptance. By default, the probability of double-spending decreases with the time passing between blocks.