La manera que vos comentaste al principio es buena. Deja esa función afuera. Diferente sería si tuvieras que modificar algo del DOm. Pero vos no lo hacés en un principio.
Cita: ¿Deberia poner el $(document).ready dentro de cada funcion?
Dentro? Nunca.
Cita: ¿Por si el usuario pulsara un boton que utiliza una funcion antesde que se cargara la pagina?
No creo que eso sea posible. Ademas vos no estas asignando una funcionalidad desde el <head>. O al menos no es así en el codigo que publicaste. Usas eventos inline? Quiero decir: vos mostraste una funcion, pero no el llamado a esa función.
Otra cosa: ready es DOM-ready. Que la pagina tarde en cargar no significa que el dom no esté ya cargado. Las imagenes, por ejemplo, tardan lo que el texto no tarda... y CREO que lo que aparece en pantalla aparece recién luego de construirse el DOM. Alguien sabe si es así?