A 10 minute delay is productive if it guarantees the correct output every time.
10 Seconds is not going to be enough. The Excel Connector - General Known Issues and Limitations reference states that it could lock a file for up to 6 minutes. It also says that actions could take up to 30 seconds.
From what I've seen, even if you set the delay to anything under minute, you aren't guaranteed that it will return updated information on time. It might work sometimes, or maybe most of the time, but it is unreliable.
Go look up information about the Excel Connector and see that it is not stable for rapid updates and data retrieval.
The reason I ask about the ID number is that sometimes it will vary how the value is used. If it is a number in a text format, it might actually be in the column as '12345 with the single apostrophe in the front. If the number is a number value, then it will not have the apostrophe. Power Automate might be changing a number to a text string. I really don't know if that is the issue, but it would be something I would look into to confirm the vlookup is working correctly.
Using Excel as a middle function in a Power Automate flow will usually require some adjustments to accommodate the connector's limitations. You could also try using Excel Scripts and see if that is an alternative to this vlookup method. You can create an Excel Script and then run it from Power Automate flow.
Another alternative would be to use a Word Document and populate properties from a template.