All this an unfortunate consequence of Intel's marketing. For all intents and purposes, the i7 and i9 are the same chips*, just configured to run different clocks. In the past, Intel used to put a more strict upper clock limit onto its "cheaper" CPUs. For example, the Skylake CPUs were configured by Intel so that they would maximally reach a multi-core clock of 500Mhz higher over their base clock, even if the CPU itself (sans limiter) would be technically perfectly capable of higher clocks. Now, with Coffee Lake we see the i7 run (multicore) 700Mhz or even higher over its base clock, which is a clear change from before. Why did they do it? Probably because otherwise the performance improvement of 6-core Coffee Lake over the 4 core Skylake would be very small and there wouldn't be enough incentive for users to upgrade.
It is very likely that the 3.2-2.3 clock (multicore sustained operation) is the upper limit of what most of these CPU dies can sustain under the 45Watt TDP. The only way to get more multi-core performance out of the i9 is to run it above its official spec. In other words, you need to run the i9 as if it's a desktop CPU. Which is again, quite awkward, since Intel sells it as a 45Watt part. Frankly, Intel put laptop makers in a very uncomfortable position here: offer it, and get criticised for lacklustre performance, or skip it, and get criticised for not offering it. All this could be fixed simply by selling the i9 as a 60W part (which it really should be) for large enthusiast laptops.
What does all this mean for the i7 vs. i9 debate in the MBP context? Well, that i9 upgrade is even more situational than before. If you rely on sustained multi-core operation (video encoding, raytracing etc.), then i9 probably won't do anything for you. If your workflows are more bursty and utilise mixed single-thread and multi-thread operation, the i9 will most likely have a slight edge over the i7. As it stands, I wouldn't recommend to get i9. I did get it since it does help out a bit with my work, and money wasn't an issue anyway.
*Yes, there is a difference in enabled cache size, but it's not really relevant for making my point.