We do not have a good way to estimate the kind of mechanical load the strips you are rotating would put on the motor, so we cannot say whether those are a good match. Also, if you want multiple strips to be in the same position at the same time (or precisely out of phase with each other), you probably want some type of position control rather than just speed control.
In general, it is possible to get speed and position control from a brushed DC motor if you are using feedback. You would monitor the rotation rate and adjust the input power to make the motors spin faster or slower. Our jrk motor controllers can use feedback from one of the two encoder channels in a PID algorithm (which you can read more about in the Jrk user’s guide) for speed control. The RoboClaw motor controllers we carry can use both channels of the encoder to perform position control with a brushed DC motor. You could also implement your own system on an Arduino.
Stepper motors, in general, require less sophisticated control algorithms for precise speed and position control. You simply send a voltage pulse to a stepper motor driver and (if the torque required to move the load is well within the torque the motor can produce) the motor will move a fixed increment, so feedback is generally less important. Unfortunately, the torque a stepper motor can produce decreases with speed and it might be difficult to find a stepper that can operate at the speeds you mention (1800 RPM) with a direct drive system. Also, stepper motors generally have longer lives than brushed DC motors (the brushes themselves wear out).
We do not have any brushless motors or controllers for them, but I have heard of some products that appear to be able to perform speed and position control with them.