As of a few days ago I was also seeing screwiness with hash rate unless I stuck to using stratum instead of GBT. My hash rate would be quite variable and, as I said before, sometimes one of my miners would get stuck in a state where it would constantly throw an error about "unknown user" until I killed and restarted it. Using stratum, none of these problems appear, so I've stuck with that. My hash rate is where it should be and I don't see any weird errors.