я пока еще не спец, но попробуйте так:
функции выдвиньте из .ready, тогда
$(document).ready(function()
{
fancybox_show();
setInterval(show_fancybox, 1000);
});
тоесть первой пусть стартует та функция которая у вас занимаеться подготовкой, а потом уже та что проверяет условие (будет выполняться каждую сек.) ну а там уж как сработает ваше условие в момент проверки - вызывайте показ окна или чего там у вас