Shunt DC motor controller improvement
So this looks as if the circuit controls armature current?


It controls armature voltage.


  would it be better if the winding current was controlled?


Controlling armature current with an outer voltage or speed control loop would be better, but more complex.

By "winding current" I suspect you mean field winding current as apposed to armature winding current. Controlling the field winding current would make the minimum operating speed about equivalent to the present maximum speed. Reducing the field current will increase the speed and reduce the torque capability. I doubt very much that is what you want.

The above seem to be the only actual questions asked. The question seems to imply that you wish to improve the control scheme because the motor " runs slightly erratically." You have not actually described what aspect of motor performance is undesirable.

Speed decrease with increased load is normal for a simple armature voltage control.

Random speed variation with a steady load could be due to line voltage variation, other power quality issues, motor brush problems or a loose connection. Failure to start relably would like be a brush problem.