Try using the --ignore-installed flag:
sudo -H pip3 install --ignore-installed PyYAML
This works because to upgrade a package, pip first uninstalls the old version, then installs the new version. It is the uninstall step that fails for distutils packages. With the --ignore-installed flag, the uninstall step is skipped and the new version is simply installed on top of the old one.