Thank you! That was it. Strangely, I have two other fields based on regular Entity Collections and not a KeyValueCollection. In both of those I defined “property” and not “captionProperty”. They worked just fine.
However, for consistency, I changed my other lookup fields from “property” to “captionProperty” for the dropdown values from the optionsContainer.
Why is a KeyValueCollection different from a regular Entity Collection in this way?