You could try this (not sure if it will work):
1. Open \Profiles\Adventurer\Bounties.xml
2. Change:
<If condition="not (Me.IsInTown)">
<TakeWaypoint waypointNumber="0" />
</If>
to
<If condition="not (Me.IsInTown)">
<UseTownPortal questId="1" />
</If>
You might...
For spending Blood Shards you can use KadalaSpree, although it has some bugs.
You can't really disable killing white mobs, as they are usually part of the Bounties themselves, at least not in Trinity 2.
Did you select the option to force a townrun when certain ammount of Blood Shards is reached? Just leave it off and let it do shopping when Adventurer returns to town, then it works fine.