Techniques for determining the peak of sine wave via ADC
Once oversampling at 1kHz, 'just finding' the min and max sounds good to me, to well within 5%. 

Let's do the error analysis. 1kHz is 16x oversampling, which means you'll always have a sample within 2pi/32 = 0.2 radians of the peak. cos(0.2) = 0.98. With random phasing, your 'peak' will be within (+0%, -2%) of the true peak.

That meets your 5% specification. Do you need to do any more work on this?

What's the noise on your signal? If you need to start averaging samples due to high noise, or rejecting sporadic noise peaks, then life gets a lot more interesting. The simplest mitigation to noise is an analogue filter before your ADC. You will already have an anti-alias filter there, but it might be worth tightening it down to just over 60Hz.

If you need to do (or want to do) digital processing, then the fact that your input frequency is tightly controlled should mean you don't need to actively synchronise to the incoming waveform. As you are (reasonably accurately) oversampling 16 times, or better still change to exactly 16x, you could compute the total power of 8 successive samples, one complete half-cycle. That gives you a measure of the RMS signal, with noise events suppressed somewhat. More half-cycles summed, more noise suppression, but then you're waiting longer for a detection.

If you want to do non-linear noise suppression, then you need to start tracking the signal you're sampling, with a software PLL. The possibilities for making this little area of the project a big area are endless. Don't over-design it.