2. The time corresponding to the two maximum voltage values can be measured by a simpler and more accurate method. Because for periodic signals, the time difference between the maximum moments of the two signals is equal to the phase difference divided by the frequency.
The phase difference can be obtained by the zero-crossing time of two signals, and the signal is shaped and realized by digital circuit.
3. If it is a complex signal, you can sample it by your method, then calculate the fundamental phase of the two signals by Fourier transform, and then subtract it to get the phase difference.