Regarding Portal, is there anything stopping you from simply editing the federation urls (e/.g. private portal url) to https://dnsalias.domain.com...? You may find you also need to define the webcontexturl for Portal. I would be testing these configurations in a QA environment first as you will likely have to unfederate & federate several times to see which configuration provides the desired output.
Regarding datastore, I also have these questions.