Is there any best practice or configs available to set API call quotas per Connected App so that Salesforce API call limit isn't exceeded?
You can implement a "quota" on the client (caller) side by looking at
Sforce-Limit-Info header that is included by SF in REST and SOAP API responses. From docs:
api-usage — Specifies the API usage for the organization against which the call was made in the format nn/nnnn. The first number is the number of API calls used, and the second number is the API limit for the organization