Solve
one problem at a time. Lets get your local server synced properly, which is only one of your problems:
Step 1: Get your system you want acting as a time server into sync, at once. a) Stop your ntpd client, b) restart ntpd, and use the -s option to sync immediately.
# pkill ntpd
# ntpd -s
Step 2: Check your local time
$ date
Step 3: Are you still running with the wrong time now? One hour off? Minutes off? Multiple hours off?
If you are exactly one hour off, you likely have a timezone problem. Confirm you are using the correct timezone file:
$ ls -l /etc/localtime
If /etc/localtime is a symbolic link to the correct timezone file, but your timezone is still off, you can adjust timezone interpretation in the kernel. As previously recommended, read the timezone section of the config(8) man page.
If the time is still incorrect after ntpd -s, but something other than exactly one hour, please let us know.