Ethernet W5100 handling of xml files

You don't need to send it all in one packet. Just tighten it up a bit.

client.println("HTTP/1.1 200 OK\r\nContent-Length: 110\r\nContent-Type: application/xml");
client.println("Server: Arduino\r\n");
client.print("<?xml version=\"1.0\"?>\r\n<RTC>\r\n<time>");
char datestr[24];
DateTime t = RTC.now();
char daysInWord[3];
DayInStr(daysInWord,day_of_week(t.day(), t.month(), t.year()));
client.print(daysInWord);
// I put the space in the sprintf below
sprintf(datestr," %02d-%02d-%04d  %02d:%02d:%02d",t.day(),t.month(),t.year(),t.hour(),t.minute(),t.second());
client.print(datestr); 
client.println("</time>");
client.print("<NTPStatus>");

If there are errors, I'm sure you can figure out where I messed up.

edit: If you use the "F" function, you can avoid putting the constant strings into SRAM.