I have this simplified code in a test script:
Account acct = new Account();
acct.Name = 'Test Account';
acct.managed_package_custom_field__c = '12345';
insert acct;
system.debug([SELECT Id, managed_package_custom_field__c FROM Account WHERE Id = :acct.Id ]);
The output of the debug shows the Id, but nothing for the other field.
This works fine through the user interface. The field level security for that field is editable by all.
I have to be missing something simple here.