I have been having problems with reading the time on my ds1370 and your discussion may be pointing to a fault on my rtc module.
When Initally setting the time, I was able to get it close to the computers clock just by resetting the Arduino 2 seconds before my preset time.
I can Set and initally Read the ds1370 ok using code similar to the Wire only code listed in this discussion. When I disable the clock setting code so that it only reads the time, it is always 19 seconds slow. This discrepency is constant over several days. I have tried several sketches to read the time, including one from the Arduino Cookbook and the result is always; about 19 seconds slow
I found it intresting that your problem involved about the same 19 seconds that mine is slow by. I think I will have to get another RTC module.