Ciao,
in effetti è difficile capire, carico la pagina e tutto inizia a muoversi, non riesco a percepire questo secondo di ritardo.
Comunque se vuoi che uno script venga eseguito _prima_ del caricamento della pagina "statica" in modo da avviare l'animazione istantaneamente, devi caricare script ed eventuali librerie di animazione "above the fold" ovvero nell'head della pagina
Questa è pratica poco ortodossa perché in sostanza stai posticipando la visualizzazione della pagina a dopo aver finito di caricare gli script, l'esatto opposto di quello che tutti vogliono per far viaggiare i siti più veloci.
Errata: ho guardato il sito, le animazioni sono css non javascript. Questo cambia (relativamente) visto che carichi comunque dozzine di file css nell'head.
Altra considerazione: l'animazione delle voci sul menù forse è un po' troppo, si muove tutto, mentre le immagini che si spostano sono un effetto un po' strano, forse un kenburns non ti va meglio? e poi il template calcola male la larghezza del sito, bene avere animazioni ma se poi non riesco a leggere il testo direi che è nocivo.
Comunque, per far quel che chiedi: inizia con uno stile "no-animate" impostato ai testi; poi in un javascript caricato con l'evento load aggiungi la classe animate, a quel punto puoi decidere lo stile iniziale (es. usando il selettore .no-animate.fade-in ) e l'animazione indipendentemente.
Il codice può essere con jQuery visto che ce l'hai:
jQuery(function() {
// questo viene caricato dopo che la pagina è completamente caricata
jQuery('.no-animate').removeClass('no-animate').addClass('animate');
});