remove a component from a package into the unpackaged area
Remove the component from the package source code, upload a new version, install that version with
force:package:install -t DeprecateOnly.
move a component from one package to a different one
Move the component from the first package's source. Upload a new version of the first package, and install with the same command as above (deprecate only). Now, set the dependencies on the second package to the version that you just uploaded in sfdx-project.json, and then upload and install that version. You don't need the deprecate only option on the second step, as we're not removing anything from the package.
See also my own question from a while back.