Sim, deve ser possível alterar a frequência da CPU. No XP, algo como SpeedSwitchXP pode funcionar. Eu não tentei por mim mesmo então tente por seu próprio risco. O XP regula a frequência da cpu nos bastidores com base no esquema de energia selecionado até onde eu sei.
No Ubuntu, você pode clicar com o botão direito do mouse em um espaço vazio em um dos painéis (também conhecido como barra de tarefas) e clicar em "Adicionar ao Painel ...". A partir daí você obtém uma lista de itens que você pode adicionar ao painel. Aquele que você deseja adicionar é o "Monitor de Escala de Freqüência da CPU". Se a escala de frequência da CPU for suportada, você deverá clicar com o botão esquerdo nela e selecionar suas opções de frequência.
Infelizmente, não sei como alterar a frequência com base no calor. Espero que alguém possa ajudá-lo com isso. Eu esperaria que isso fosse possível com um script de algum tipo.
Se você está com problemas de superaquecimento, tente remover a poeira com ar comprimido e certifique-se de que todos os ventiladores possam girar.