Brushed Motor Voltage Drop
It is likely you can solve your problem by starting your motor slow then ramping up the speed.  Tutorials are all over the web to do this.  Here are three: 1, 2, 3.

To control motors the Arduino generates a fast pulsing signal that switches on and off over and over.  The frequency is generally constant.  However the duty cycle can vary.  To make a motor go slow the on part is very small compared to the off part.  This type of signal has a low duty cycle.  Perhaps 0% to 25%.  To make a motor go fast the on part is very large compared to the off part. This type of signal has a high duty cycle.  Perhaps 75% to 100%. The following image shows duty cycles from 0% to 100%:



The Arduino function call analogWrite() is the secret to controlling the duty cycle of the Pulse Width Modulator (PWM) feature.