The event onBeforeOrderCreate is called, as the name tells you, before the order is created. So you don't have the order_id at that time since the order_id is generated automatically by MySQL when a new entry in the order table is inserted.
If you really need it at that point, the only way I can see (which is not perfect), would be to do a query and load the max order_id of the order table and increment it so that you get the next order_id which will be used and there is a very high probability that there won't be any order created between that time and the creation of the order.
But maybe you should do it differently: add a custom order field and use the unique_id() PHP function to generate an unique id that you can put in the custom field, use it in your code, and then you will be able to identify the order with that unique id.