Ambas formas son correctas. En la primera parte de la frase la palabra "español" es el objeto o complemento directo, o sea que es en quien recae la acción del verbo (hablar). La segunda parte es una oración subordinada y la terminación "lo" hace referencia a ese objeto directo, esto quiere decir que para sustituir la palabra español usas "lo", por ejemplo: Te oí hablando ESPAÑOL con tu padre el otro día - Te oí hablándolo con tu padre el otro día.
Otros ejemplos:
Te traje tu almuerzo. ComeLO (tu almuerzo) antes de que se enfríe.
Mis compañeros encontraron un cachorro en la calle. Ellos estaban cuidandoLO (al cachorro).
Hubo un incendio en una tienda. Los bomberos estaban apagándoLO (el incendio).
Si dices solamente "Te oí hablando con tu padre el otro día" por el contexto puede entenderse, pero si dices "hablándolo" cuando en a frase anterior mencionaste el español es una forma de ser más precisa y específica.