If the instance of your Cosmos client only does these bulk inserts then create your client using the AllowBulkExecution setting below.
new CosmosClient(endpoint, authKey, new CosmosClientOptions() { AllowBulkExecution = true});
Would be helpful to see the code for your custom handler to better understand why that is not working. But generally speaking you should trap for 429 responses and implement a backoff/retry policy with Polly with a one second interval. However, with bulk mode enabled you should see far fewer of these anyway.
Thanks.