The problem with drones right now is that too many of them are doing too many things, this will consume a LOT of ram and processing power, so limiting what the pathfinding and what they think should do the trick.
The right way to deal with that in my point of view, is to have a control panel where you select how many drones work on what and how many should be kept offline (so they dont consume memory/energy or are kept as reserve).
You could have an option to select the kind of work they do:
General pourpose: they do everything but are very bad at it, they should also consume more memory because they are not "optimized"
Trash collecting (they only take things from the ground, be it left resources after demolishing or mining)
Mining, they only mine and will only collect after they finish mining
Construction work, with limitations such as only being able to collect materials from storages
Maintenance, with the same limitations as above
Refilling, where they will only work to refill resources needed in production where there are no conveyers or where they are allowed and again they only take resources from storages.
Market/Cargo, these drones will only work with the building to complete orders
Offline/Standby, if there is nothing left of their primary order they wait and recharge you could also select a secondary order (after a research) that if they are on standby they will carry it like helping loading market/cargo supplies
As long as there are hard limitation on the drones, the pathfinding will have a lot less work to do
If the drones are forced to take things only from storages it also helps pathfind to do a lot less work because it will not keep trying to find the "best" in dozens of options
It also gives a reason to have storages that only drones can acess in this case because
It would also be better to have this as a reasearch, like you start with the general pourpose drone but after a research you have acess to the drone control panel