Official HyperCard documentation states that HyperCard (up through version 2.1) will read up to 31 characters as a valid parameter when you use the GO HyperTalk command or a script to address a card by name. This is the theoretical limit, though tests show that HyperCard accepts 33-character names as a valid practical limit. Bigger and more complex stacks could pull the practical limit more in line with the theoretical. In tests, entering a card name of 34 or longer gives the message "String too long."
The 31 character limit concerns accessing the card, not simply naming it. You can type as many characters as you want into the Card Name area of the Card Info dialog box, but for obvious reasons this is not advised. You would not be able to access the card directly with a name over the maximum valid number above.