Dynamically Create/Update/Replace Custom Properties with bindings and change scripts

We recently learned that Perspective Session Properties created in parent projects are not inheritable by child projects. We are looking for a workaround for this issue as we are developing a fairly sizeable code base with lots of different projects and if we ever want to change the session props across the board we don’t want to have to manually go through every project to update it (did it once, it wasn’t fun).

We have found that we can create the session props easily enough using setattr in an inheritable python script attached to a startup script. However, some of them have bindings and in the future will likely have change scripts and I haven’t found a way to set the bindings or change scripts to these newly created props using python or any other method.

Is there a way to set the bindings of a property via python? What about change scripts? Or is there a better way to do what we are trying to do?