I think it can be done by removing the workflow you want to restrict from the list in the Share UI, and then creating an action for executing the workflow that displays when the content has the relevant aspect.
There is a list of restricted workflows in web-extension/share-config.xml. Override it with share-config-custom.xml.
A good tutorial on actions is available in Jeff's Alfresco Developer Series:
http://ecmarchitect.com/alfresco-developer-series
Good luck,
Richard