Once a shared asset has been assigned, it cannot be transferred to another token. However, when you split a token, you have options on the Split activity as to what relationship you create them with (which if set to Child can give label access to the created token) and you have the ability to set labels on the newly created tokens. This would allow you to manually assign labels to the new tokens that would give you references to the shared asset.
I've attached a simple model as an example. Two resources are acquired and then the token is split. I create the new token as a child so it has label access on its parent. Both tokens set their opertator's color then release their operator. The biggest trick here is making sure we release the right resource. Currently, the Release Requirement wants either a reference to the Resource Shared Asset, or an index of the array. In the future this may change to allow you to pass in the object that you want to release which would make the releasing simpler. In order to work around this, the Release Requirement has some custom code in it to find the index of the resource.
splitresources.fsm