Всем большое спасибо за помощь. Остановился на вот этом варианте:
var current = 0; // Текущая строка пикселей
function scrollBg(){
//Переходим к следующей строке пикселей
current -= 1;
//Если конец изображения, то переходим снова вверх
if (current == -2000){
current = 0;
}
//Устанавливаем CSS заголовка
$('body').css("background-position","0 "+current+"px");
}
//Вызываем прокручивающую функцию повторно
var init = setInterval("scrollBg()", 60);
Тесты показали, что это самый оптимальный вариант. Нагрузка на проц максимум 25%. Все остальные варианты перепробывал с различными параметрами и все они проиграли данному. Картинка плывет более-менее плавно и не тормазит.
Еще раз всем спасибо!