I know how to manually split a commit using
git rebase -i
For every commit, you would need
first to list all files in that commit
git diff-tree --no-commit-id --name-only -r <SHA1>
then for each file, extract that file
git show <SHA1>:/path/within/repo/to/file
Do that in a working tree of a dedicated branch, and for every file extracted, add and commit.
Then you can reset your current branch by that new one built commit-file by commit-file.