jQuery throttle / debounce - отличный плагин для безопасного выполнения таких вещей. jsFiddle
$('html').mousemove( $.debounce( 250, true, function(e){
$('header').animate({ top: '0' }, 300)
}))
.mousemove( $.debounce( 5000, false, function(e){
$('header').animate({ top: '-60px' }, 300)
}));
ps: имейте в виду, что присоединение к <html>
таким образом может блокировать ваше событие другими элементами страницы (хотя вряд ли для события mousemove).