Here you are always writing starting at Address 0. The ADD 7 is always being reset.
Code:
  if PORTC.6 =0 THEN
                        GOSUB READ_RTC
                        Write_Address =0
                                I2CWRITE DPIN,CPIN,$A0,Write_Address,[sec,mins,hr]
                                PAUSE 10
                                Write_Address = Write_Address +7
                                        Battery_Charge_Counter = Battery_Charge_Counter + 1
                Endif
Unless I am missing something.