Yes. In this plugin you can choose witch action you allow. For example, you can only allow login and authenticate and all the other actions will be disabled.
You have a dedicated "Error Codes" section in the Documentation. There you have an explanation for each error code.
Yes. This plugin works with BuddyPress. You can access BuddyPress private REST API endpoints by providing a JWT in the REQUEST. You just have to enable the option "Allow JWT usage on other endpoints" from Simple JWT Login "General" Settings.
Yes. You need to store the public and private key in the plugin "General" Settings.
Yes. Just go to the "Register" section from Simple JWT Login plugin settings, and add the meta that you want to allow on user registration. Also, you can check the Documentation for more information.
Yes. This plugin has built in integration with the ForceLogin.
Yes. You can assign a user role for each "Auth Key". Depending on what user role you want to create, just add that Auth key to the request.