You are right. You’ve hit the nail on the head because it is North-American idiom.
1.This idiom is (NAmE) in the Oxford Learner’s Dictionary.
It is written: Charley horse = cramp
Its example:
-Ow! I just got a charley-horse in my leg.
2.In the Free dictionary:
a.charley horse
a painful, persistent cramp in the arm or leg, usually from strain. (Typically: get ~; have ~; give someone ~.)
-Don’t hike too far or you’ll get a charley horse.
b.a charley horse (American informal)
a sudden, painful tightening of a muscle in your arm or leg
-She got a charley horse in her leg and had to stop dancing.
3.In The phrase finder you can read the origin of this idiom.