Unfortunately, Alfresco has made it almost impossible to create a custom data type. Their internal code for handling values of properties contains a lot of direct coding for specific property types, but does not provide any extension point to add in custom type handling. Though it is technically possible to define a new property type via dictionary models, you would not be able to properly map that to the database without going in and making changes to the Alfresco core to handle your custom type.
Years ago (2011), I provided an enhancement / patch contribution to make implementation of custom property types possible. But after some initial off-JIRA discussions, there was never a follow up, and it fell victim to the big "close all old JIRA issues" purge of 2016. Since I provided the enhancement, some additional features have been added to Alfresco which made it even more difficult as it was back in 2011.