i would run sudo composer self-update (with sudo), because it really needs to write to a /usr/local/bin folder. or remove it ( sudo rm-rf /usr/local/bin/cpmposer) completely and start from scratch https://getcomposer.org/doc/00-intro.md#globally (read about permissions and sudo and local executables in that short documentation section)
to the second question: i would not install composer packages (composer instsall) with sudo (root user). not because security risks, but probably some file permissions, because all of the vendor files but also some of the auto-generated files will be created by root and you (or apache/webserver) wont be able to change/update them or write to some folders created during by the composer installation). run under your local user for your local project and as some user that runs webserver (www-data or similar) on production