Hi there!
So the Arduino Uno is a great board to start out on. However, there are a few drawbacks. There are only six digital pins on the Uno that can feed a PWM signal (pins 3, 5, 6, 9, 10, 11). With this board, you could only use six motors at varying speed.
Another issue is that the motors take a maximum of 3.7V. Since the Uno runs on 5V, you cannot directly hook up the motor to one of these PWM pins.
There is a 3.3V regulator on the board, but it can only output a maximum of 130mA, which is enough to power only one of the motors you specified.
With that said, you will have to have some sort of interface circuitry that will take the signal from the Uno and use that to control how fast the motor will turn. Something like a MOSFET or a prebiased BJT would be great for controlling how much current the motor will take, and subsequently how fast it will turn.
If you want a board that can control the desired 8-10 motors, I would recommend the Arduino Due, as it has 14 PWM pins, and the 3.3V regulator can output 800mA of current, which is barely enough for 8 motors.
Overall, I would recommend using a external battery power the motors, and using the transistors I mentioned.