Incidentally, AMD has recently addressed this question. I speculated on a recent article (one that confirmed the upcoming Ryzen 9 X3Ds would again be single-CCD-with-cache affairs) that perhaps it's not because of a technical barrier but rather it's possibly a business choice because the costs probably far outweigh the performance benefits. The reason AMD gave was... exactly that.
Cache on both CCDs won't help in most games since few, if any, games meaningfully use more than eight cores (at least to the extent to see a real benefit), and for those few that might, crossing CCDs has performance penalties that largely counteracts (if not more than negates?) the benefit. So you would be left with a processor that now needs to be much more expensive for very very little benefit, if any at all. At least for most things/gaming. I mean, maybe it's a cool concept to speculate about for something like Minecraft with Distant Horizons (which scales with core count and I don't think latency matters much, and that's presuming the LOD generation is even sped up by extra cache which I'm not sure of so maybe the current hybrid approach works just as well) or something, but... yeah, those types of niches are too uncommon to make it worthwhile for now.
What about the non-gaming situations where it could benefit massively? There's always exceptions, but it seems they are too few in number (at least for now, and at least in AMD's opinion) to make it worthwhile. Making the CPU that way would mean it needs to be even more expensive, meaning they will likely lose more buyers than they gain in profits from those abstaining from buying it over this single fact.
So "it's not worth the additional cost/resulting higher price we'd need to charge because the benefits are too few/low". This isn't just my speculation anymore; it's the very reason AMD has recently claimed as to why they aren't doing it.