Cita: mi profesor comenta que no debería ser necesario incluir su JAR para que se pueda usar mi función.
Cuando uno es muy novato a veces cree entender cosas que no son así, y en este caso si tu profesor ha dicho realmente eso, falta parte del contexto.
Si tú quieres usar su clase Leer en tu proyecto, el jar sí o sí debe estar en el classpath de tu proyecto, y en tu código debe aparecer el import a la clase Leer.
Cita: import utilidades.Leer; //este es el jar con la clase que nos dio el profesor.
Esto es un ejemplo de esos malentendidos, un import hace referencia a una clase o clases, no a un jar. El jar es un zip que contiene a las clases, nada más.
Cita: La única manera de hacerlo por mí mismo que sé es con scanner, pero nunca la he utilizado.
Pues tardarías 5 minutos en aprender a a usarlo, e igual tu profesor se refería a eso con lo de que no necesitas su jar para que trabaje tu función.