Is there any way to move submodules within your superproject without removing them first and re-adding them ?
It's similar to how you removing a submodule (see How do I remove a submodule?):
git add .gitmodules
mkdir -p new/parent
mv -vi old/parent/submodule new/parent/submodule
git rm --cached old/parent/submodule
Looks like this for me afterwards:
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: .gitmodules
# renamed: old/parent/submodule -> new/parent/submodule
#