The short answer to my question is probably "user error" or "user ignorance". The slightly longer answer is that I have inadvertently changed the SIZE parameter for the Short Text fields and this is leading to entered values being truncated. If this happens to you then check the SIZE parameter in the table design view for the given field. Thanks to Erik A and iDevelop for steering me in that direction.
I did a little bit of an experiment with a new blank database and found the following:
If you create a new Short Text field it will default to 255 characters. If, in the current session, you change that field to a Long Text, save the database, and then change it back to a Short Text, it will revert to being 255 characters long. The image below shows the "after" view of this change.
However, the behaviour is different if you make this change across multiple sessions. First, I changed a Short Text field to a Long Text, saved the database and closed it. I then re-opened the database and changed the field back to a Short Text. In this case, it changed to being 50 characters long, not 255. The image below shows the "after" view of this change.
This doesn't explain why my field was set to 2 characters, hence the explanation of user error, but I think it is worth noting that Short Text field sizes can change in a counter-intuitive way if you are making changes to the database design across sessions.