No está mal. El trigger se encuentra bien programado y estructurado.
Para eliminar los 2 errores, creería que no se puede. Sin embargo, podrías mirar el tema de excepciones personalizadas.
https://docs.oracle.com/cd/B10501_01...24/07_errs.htm
Si lo logras, nos cuentas.
Saludos