aaahhh ya ya ya, ahora entiendo tu problema, es a nivel de visualización, nada que ver con el tipo de datos ni que el rtc lo toma mal o que el pic hace otra cosa, no no, el problema esta en las instrucciones de visualización:
vi por ahí un %2X dentro de las comillas del printf, no esta mal la idea, pero ahi tienes que controlar los limites hasta donde va a visualizar, y es un rollo creado en vano
mejor usa %2u, ese es el que yo uso, y no hay ningún problema en la visualización, porque lo hace directamente en entero, el otro es hexa, por eso el rollo