Fortunately I did not have to read it all, this Deepak's comment was enough
Added condition on EditProduct form at r#1746422, Now inventoryItemTypeId will be enable only for createProduct, and on EditProduct screen it will be displayed as readonly instead of editable dropdown. Also fixed fk-name for inventoryItemTypeId relation
The only problem is that you can have the inventoryItemTypeId with a null value. It's then considered by convention as not serialised. But then only the label shows. I fixed it at by setting the inventoryItemTypeId as not serialised in this case. It was a bit tricky because you have to consider if the product is null (creation) and then not set product.inventoryItemTypeId. It would else defeat the creation case and give other contradictions.
R13.07 not concerned