Hi Andrew! So brave to be the first person to post!

I have also struggled in silence and darkness with those very problems which you describe. For the first issue -- vowel signs being added and deleted -- I do something similar, but using slightly non-canonical TEI. I actually include the consonant inside a <subst> tag to make explicit the fact that it's that consonant being modified. So, for example,

abhi<subst>dh<del rend="implied">a</del><add>ā</add></subst>ne

This has the added advantage of making it easier to render this in devanāgarī and other abugida scripts. See here:
http://saktumiva.org/wiki/dravyasamuddesa/17-chennai?upama_scroll=c3.2.6-1
and the same in devanāgarī:
http://saktumiva.org/wiki/dravyasamuddesa/17-chennai?upama_scroll=c3.2.6-1
in malayālam:
http://saktumiva.org/wiki/dravyasamuddesa/17-chennai?upama_scroll=c3.2.6-1&upama_script=malayalam
and telugu:
http://saktumiva.org/wiki/dravyasamuddesa/17-chennai?upama_scroll=c3.2.6-1&upama_script=telugu
With regards to the second issue -- I also have this problem, but I have yet to find an elegant and simple way to encode it. It would be such a chore to split an akṣara into parts every time you hit a string hole or a line break...

Best wishes,

Charles