PWM really is the simples and best way to control a machine
A simple DC machine has the advantage that speed is proportional to the voltage applied to the motor windings.
However, this is only true for a constant, unchanging load. IE if the machine is to drive a load that will never change then the machine constant can be calculated faily acurrately.
IF as you say the load could change, then you will need some sort of speed-feedback to ensure the speed is held at the demanded level.
and also from what it soulds like you need a current-loop as well to maintan the load