Si no me equivoco, el procesador cuando está inactivo ejecuta la instrucción NOP (no operation). CPUIdle sustituye todas estas instrucciones por otra que hace que el procesador entre en modo suspendido, digamos que "se apaga", por lo que deja de trabajar => baja la temperatura.
En la página de cpuidle lo pone en detalle.