If things get complicated, remember to take a step back and start thinking simpler.
It is not 100% realistic, but you can get great results with turbulence and noise maps (add fractal if you want) and by animating their phase. Create multiple of them with different scales if you want more detail. If you are not rendering/looking from a point close to water surface, go with Bump only, as it will significantly improve render times.
Plus you can quickly see the results, in contrast to simulating something, then rendering and then checking the results.
See a very simply and quick scene I made using only turbulence noise.