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.
So it would be rather easy to make it good enough for most point of sale usecases.
Overall, it's a rather overblown issue affecting the crippled btc network.