Yeah, my first thought was a hall effect device. You want a ratiometric HE device. Allegro has a number of them. With the magnet in the right position, you should be able to determine position within the noise of the system. Noise will be an issue due to the motor.
Another thought - if you know the period and can trigger on a specific position, all the other position information is deducible. So, for example, have some sort of interrupter (photocell based) that you can use to determine period. In addition, since you know where the interrupter triggers, you know the starting point. Since the motion is sinusoidal you can compute that actual position with a pretty high degree of accuracy. This assumes that the period is reasonably stable (i.e. only changes slowly). In addition, it can be predictive so you can compensate for compute latency if you are controlling a camera or other devices.
7404 is an inverter