If you are inserting a record through the object standard new button and making a callout in trigger then it wont work as you will get the error you mentioned.
I can think of 2 Options:
Option 1: Override new button and use lightning data service tags.
use lightning record edit form tag and you can show the sobject layout with just a single tag.
There is an onsubmit submit handler which gets called before the record is created in the object, you can use this to make the callout from apex and get the information you want.
event.preventDefault(); // stop the form from submitting
//make the callout and if this successful do the submit in the next step
If this is successful you can just invoke the save method of LDS as next step and save the data in the sObject.
Use a future/queueable callout from trigger and use Lightning:emapi to listen to a platform event which is fired when the record is updated in the future context based on response from external system.
The catch with this solution is you dont have control over async processing in salesforce so they may/may not get executed immediately.