I can suggest a few lisp statements for some of the tasks. Once you complete the routine, run it in a batch process to operate on multiple drawings. Or, modify your acad.lsp to start the routine on starting drawing. The last lines in the routine could be to save and close the drawing. Then open multiple drawings at one time.
1. lisp to select all text and mtext
(setq alltext (ssget "x" '((0 . *text))))
(setq ecount 0)
(repeat (sslength alltext)
(setq ename (ssname ecount alltext))
(etc...stuff to substitute one font for another)
2. same as 1, check alignment codes, if vertical change to horiz, left justified.
(setq allblocks (ssget "x" (0 . "insert")))
(command "erase" allblocks "")
(command "purge" "block" etc.....)
4. dunno...what type of object is the border?