Just passing on my solution in case it’s of any help to anyone.
I’m still not completely sure what happened, but after disabling all plugins and eventually trying a completely separate, vanilla install on my localhost, I determined that something had gone wrong in the theme files.
I was able to fix the issues by downloading a fresh copy of the Twenty Eleven theme and installing it. The child theme was untouched and working fine.
As soon as I did this, my custom fields appeared without any further problems.