subdirectory install breaking existing links

You’re not doing anything wrong. WordPress does not monitor the links within content, so it’s up to you to change them when your structure changes.