I definitely think that the trouble is a throttle that's stuck 'wide open'.
But first, you wrote that "when I stop it stalls". That's just a bit curious. Do you mean that at these times you've got the clutch lever pulled in (clutch is 'disengaged') or do you mean that at these times you've braked to a stop but the clutch lever is left out (clutch is 'engaged'), and the engine shudders to a stop?
This might not be too important. But, depending on your answer, it might give a clue as to what's going on.
But back to the throttle itself. Is your throttle cable able to move freely in its sheath? If yes, then I'd have a look at the brass slide at the end of the cable. Inside the carburetor.
That slide has a channel, or a slot, running lengthwise. The barrel at the top of the carburetor that this piece fits into has a tiny little 'nub' on the wall. The channel in the slide must match up with the nub in the barrel. So that the slide can slide up and down freely.
If the channel and the nub are not lined up properly, then that can cause the over-revving that you're getting.
If that checks out okay, then I'd look next at the idle set screw. If it's turned all the way in, for instance, then that could cause over-revving.
If those things check out okay, but you still over-rev, then come on back and we'll try to think of other possibilities.