What happens is that your fink startup scripts try to run xfontpath ... only your X server probably isn't even running yet. So it sits there and hangs, waiting to contact the X server and eventually gives up, which is where your script, or the Terminal, kicks in.
How do you fix this? By delaying the setting of the DISPLAY variable until after executing the fink init. In your .cshrc file, add:
# in case you're running a scriptAnd naturally, if you're using bash, you know what to do.
unsetenv DISPLAY
source /sw/bin/init.cshrc
setenv DISPLAY :0.0

