The amount of current through the stepper coils is determined by your driver circuit. Typically with commercial modules there are some DIP switches that can be used to set the motor current (for example from . You can check your motor datasheet and driver manual (for example, this and make sure the set current is within the motor rating.
The torque is proportional to the current you set, but the temperature rise of the coils is somewhat more than proportional to the square of the current, so you will get a large reduction in heating for a relatively small reduction in torque.
If the motor is sitting idle on one set of coils for a long time some drivers will allow the current to be scaled back to a lower holding current. That's called "automatic semi-flow" in the Chinglish manual I linked.
Vibration may be related to the mechanical stiffness of your mechanism, the torque and your microstep settings (try smaller microsteps). Some drivers do better than others at handling resonances at specific speeds.
If you can't get the required torque at a current the motors can handle, you may have to substitute larger motors.
You would need a closed-loop controller to use DC motors with a feedback encoder. There are DC and BLDC servo motors available with such controllers (sometimes integrated) which mimic a stepper, and they have the advantage of not suffering from lost steps even if the inertial load exceeds the ability of the motor to follow by more than a full step, however the cost is significantly higher than simple stepper motors.