OK. Your sketch is too long to include between code tags but you could have attached it to your post as a file.
Anyway, where in your sketch do you ever set the rtc with the current time ? As far as I see, you only read it with statements such as:
/*
Time t = rtc.time();
lcd.setCursor (6, 0);
lcd.print (t.date);
. . .
*/
Or do you set it in another sketch ?