Fixing (2) is easier; incorporating a ntp library and/or simply
removing the bitcoin mining code from the client but requiring pools
and miners to have accurate-to-within-a-minute system clocks (or their
blocks will be "discouraged") seems reasonable to me.
 
Incorporating NTP seems overkill. Most OSes come with NTP support integrated these days (even XP did?), there is no excuse to not be running it, especially on a server.

If you want to
produce blocks that the rest of the network will accept, run ntp on
your system.

Requiring it for miners sounds very reasonable.

JS