Would it suffice to omit the invoice number from the email and instead include a deep link to the record having the invoice number?
If you did that, both rules would likely fire before the user could receive the email, click on the deep link, and retrieve the record containing the invoice number.
Your workflow Email can contain a “deep link” to a specific application view in your application. The deep link can include the key of the specific record to be displayed in that view. This allows you to direct the recipient to open your app and see exactly the view and record you want them to see.
My thought was that instead of including the invoice number in the email, you could send them a deep link to you app that would display the invoice number along with other relevant data.
If you are trying to send a written invoice, this approach would not work. I was just hoping that this might suffice until we enhance workflow to do the workflow rule sequencing you requested originally.
I have one other thought but it might be too kludgy.
You could compute the invoice number using an event triggered workflow rule.
You could then create a scheduled rule (Report) that sends out the invoices on a schedule. I am not sure how often you would need to run the scheduled rule to be sufficiently responsive. I have a rule that runs every hour, for example.