150Ghz or higher. while -for example- a CPU runs at only at a base clock of 3Ghz.
Well, a CPU isn't a single transistor; it's billions, and even the speed of light wouldn't allow for a CPU core to distribute a clock consistently across a die at 150 GHz.
It gets worse, though: your transistor might switch incredibly fast, but it has to (dis-)charge the gate of the next transistor, and since even in fully switched state, your drain-source impedance isn't 0 Ω, and your power supply can't supply infinite current that simply takes time.
Now, a single transistor doesn't make a logic gate, you need multiple; a single logic gate doesn't make a complex unit such as floating point multiplier, you need hundreds. So, you get complex networks of connected gates and typically CMOS pairs. There's going to be a longest path there, which simply takes a lot of time from the first CMOS pair switching to the last CMOS pair switching. That's the ultimate limiting factor: you can't get faster than that, even if you ignore all other problems.
(I don't think you actually need a bibliographic reference to that, that's kind of "common knowledge"; else, pick your arbitrary VLSI textbook.)
And there's plenty of other problems: You can't increase voltages to speed up charging of gates, simply because ohmic losses go with the square of your voltage, and ho boy, is your CPU thermally limited.
You can't work with a "oh, it doesn't have to be at 99% of supply voltage, 80% is enough charge that is achieved within a cycle", because, again, billions of transistors: Reducing the "acceptable threshold", then you get cascading probabilities of things not being in the correct state. Do that a billion time at once, and you basically guarantee that something goes wrong in your CPU.
Atop of that, you, being a TCAD engineer, will definitely have to deal with a lot of interactions that say "many transistors on a die do not behave like a lot of independent transistors".