Driving Permanent Magnet DC Motor via PWM
A bunch of issues:

Are you sure you have a brushed DC motor?  This kind has only two connections.  You simply apply voltage and it spins, which is what you are assuming in the rest of your question.  All you said is that the motor has permanent magnets and is "DC", which could still leave other possibilities, like a brushless DC motor.  Those are a lot more complicated to drive.  Those have a lot more than two wires coming out, usually 3 for the drive coils and 5 for the Hall sensors.

$50-$100 sounds like the cheapest way to solve this problem unless you value your time at pennies/hour.  If this is a brushless DC motor, then you are in over your head.

Whether you run the motor from 60 V, 120 V, or something else, that DC power still has to come from somewhere.  This is independent of how you might switch it by applying something like PWM, for example.  In other words, you still need some kind of power supply.

PWM does not somehow supply more consistant torque.  PWM is merely a technique for modulating the effective motor voltage while starting with the same DC supply and wasting relatively little power in the process.

Systems that drive motors with PWM also often have speed or position feedback.  If the feedback is used to maintain constant motor speed, then the motor can appear to have high torque without running away when the load is removed.  However, this is due to the ability to modulate the motor drive and a servo loop with feedback.  PWM is one means to modulate the motor drive, but by itself doesn't somehow get more torque from the motor.

Since PWM is a technique to present a lower apparent voltage to the motor than the raw DC power supply it is derived from, you should use the highest voltage supply the motor can handle.

The apparent motor drive voltage is the raw DC voltage times the PWM duty cycle.  For example, if you start with a 120 V DC supply but the motor only needs 30 V to turn at the speed you want with the load you are going to present it, then a PWM duty cycle of 30V / 120V = 1/4 will do it, assuming the PWM frequency is high enough so that the motor does not react to individual PWM pulses.  Let's say the PWM frequency is 25 kHz, which is a common frequency to run motors at.  That means the PWM period is 40 &micro;s.  To make effective 30 V with 120 V in, you'd pulse the motor on for 10 &micro;s every 40 &micro;s, or 10 &micro;s on and 30 &micro;s off.

You say you are concerned about torque, but it appears what you really want is constant speed.  If so, a servo loop in the micro that controls the PWM duty cycle to whatever it needs to be to maintain the set speed will give more apparent "torque" than brute force gearing the motor down to the point where whatever load variations you give it won't matter much at the motor.