I think this is a long standing problem.
EIAS should “throttle” the preview to max-out at true real time. Even if it can run at 200fps, it should only play at 30fps (or whatever the project is set to in the time settings).
The only workarounds are to change the shading level (as you have already done), and to turn some groups on and off. Switching from openGL to “software” may also yield some performance difference.
You can always “render” a preview (at any shading level) by right (control) clicking on the preview icon and set it to save the preview out to a quicktime file. This should “render” very quickly, and play back properly.