Here's what happens:
The parent theme has wpml-config.xml that includes the following line:
<custom-type translate="1">portfolio_page</custom-type>
I've copied that whole file to my child theme and in that file I set the translate value to 0.
With this I expect Polylang to prioritize the child theme wpml-config.xml and disable translation options for that custom post type. Instead polylang prioritizes the parent wpml-config.xml, which has been verified by 2 methods:
* Setting the value to 0 in parent theme disables translations for that custom post type, disregarding wpml-config.xml in the child theme.
* Removing wpml-config.xml from the parent theme makes changes in the child theme apply.
I don't know that much about Polylang internals, so this is just a guess, but maybe these two files are loaded in the wrong order?