Yes, our app was using Spring. I agree run-time reflection is the main contributor to those performance issues.
Yes, we can better performance if we use a different framework like Micronaut. With Micronaut we can reduce memory usage and startup time. I would say the startup time is almost close to Rust. And if you use Graalvm native image you can reduce memory usage drastically. I was able to run a Micronaut application with Graalvm Native image of around 17MB.
I agree Java is fast. But resource utilization is not that good.
Java functional is good and fun I agree with you, and I'm replacing some of the design pattern implementations with functions. But I feel that something is lacking in the way Java has implemented the functional programming pattern. Maybe this is something personal to me. But Rust implementation is way better with Zero-cost abstraction.