My strong supposition is that it is due to how the manufacturing agreements are set up. Disney likely negotiates a per unit price on an item based on a given volume that they will be ordering. The manufacturer then does a production run based on the order volume.
The problem with offering a catalogue of items for order at the expo is that Disney has no way of knowing if they will be needing 1 or 10,000 of an item, making it next to impossible for them to project their cost, and by extension, the price they would need to charge. In addition, there is likely a minimum order required by the manufacturer further complicating things. Volume discounts are usually substantial, so they can't very well charge a catalogue price for a minimum order, either. Can you imagine if the uproar if they charged a different price for ordered items versus the expo price?
They are really in a no win scenario here. Order too few and they get the outrage over the sellout and the resellers. Order too many and they end up taking a financial hit with the leftover inventory that we've seen show up in outlets after some recent race weekends.
I do agree that expanding the pre-order system makes the most sense.