OK, The Rivarossi 0-8-0. That much should identify the locomotive for the purpose of ordering parts. There might be a model number hidden on the underside which is worth finding, if it exists. I assume the box is long gone. You might be able to order a replacement motor from Rivarossi. Search for them on the web, and then cruise their website for replacement parts. If Rivarossi doesn't work, try NWSL.
If that doesn't work, then any 12 volt can motor small enough to fit inside the cab will work. The motor drive shaft goes fore and aft. It will save you some cutting and hacking if you can find a motor with a shaft diameter that fits the worm drive shaft. Motors are made with shaft diameters of 2 mm, 2.4 mm. 2.54 mm (0.1 inch) and 1/8 inch. Adapters to marry different shaft sizes are availible but can be hard to find. The replacement motor can be mounted with nothing more than double sided sticky tape, or you can make a bracket.
For your No 2 case, if the motor shaft turns and the worm shaft doesn't, something is broken inbetween. NWSL sells a bunch universal joints that can be used for a replacement. Or, get some model airplane fuel line and make a rubbery U-joint. A lot of steamers came from the factory with plain black rubber "U-joints" which failed over the years after the oil got to them. The model airplane fuel line is some magic plastic that shrugs off the fuel, and so is proof against just plain light oil.
Good luck. Let us know how you make out.