Since heat is such a problem in modern computers, why aren't we using Tofolli gates and reversible computing?
Given that reversible computation is universal, and given that there's no reason why reversible computers can't be fast, why are EE designers not using reversible computation and Tofolli gates in modern designs?

The wikipedia article on the Von Neumann-Landauer limit explains this nicely:

A so-called logically-reversible computation, in which no information is erased, may in principle be carried out without releasing any heat. This has led to considerable interest in the study of reversible computing. Indeed, without reversible computing, increases in the number of computations-per-joule-of-energy-dissipated must come to a halt by about 2050: because the limit implied by Landauer's principle will be reached by then, according to Koomey's law.
At 20 °C (room temperature, or 293.15 K), the Landauer limit represents an energy of approximately 0.0175 eV, or 2.805 zJ. Theoretically, room‑temperature computer memory operating at the Landauer limit could be changed at a rate of one billion bits per second (1Gbps) with energy being converted to heat in the memory media at the rate of only 2.805 trillionths of a watt (that is, at a rate of only 2.805 pJ/s). Modern computers use millions of times as much energy per second.[2][3][4]

Reversible computing is not used because we have at least several decades worth of power scaling still possible with conventional irreversible computing.  Until we reach the Landauer limit, the heat generated from the entropy of operations is insignificant, and reversible computing has no practical application.