How hard on the gears is slamming into the end stop?
Do you prefer active breaking when end stop occurs...err Freudian slip, I mean braking...
Start current and stop current will be the same peak, but stop current does not decay, so the time it takes to get in motion would be the shortest time one can an choose by current sensing to shutoff, which could be be < 100ms.
This can be achieved with logic to break under any desired condition.
E.g. Locked rotor for 100ms then stop with 0V across motor or alternatively floating ( with inertial force duration extended on gears ) . This can also be accomplished without end stops simply using optical interrupters and a magnetic brake (0V across active bridge ) and thus no locked rotor gear stress on moving rotor. It also extends battery life reducing this duration., which may be of particular importance.
I recommend the DRV8837 , which I recall is an 8 pin SOIC with some switch logic and a current sense Reset using a 50mV current sense R during locked rotor and comparator to stop bridge. IN1=IN2=0 . cost=$1.38 ea.
The board would occupy less area than the side of 1 LiPo cell with a connector.
Do you want each switch to function when both depressed? Just in case...
Do you prefer when either 1st button depressed or when either button is released?
This affects the logic interface to IN1,IN2 used for Either CW and CCW which are active low inputs.
https://www.digikey.com/product-detail/en/texas-instruments/DRV8838DSGR/296-40081-1-ND/5177958
Also did you want fault detection indicators? Overtemp, under voltage? SOC indication?
Also what is the motor coil resistance? ~1 ohm? 3 Ohm's? RdsOn will affect speed and. Current.
Is speed important?