A family of Microsoft relational database management systems designed for ease of use.
First, check whether the field you re joining on is set to unique on the many side of your relationship. That is usually why Access would force it to be one to one. The case number field should be a non unique foreign key since "Linitm will contain multiple products for the same order.". I'm assuming here, that a case is equivalent to an order.
As for a program, to do this, you would have to explain first, what you want the app to do. If the main basis is order entry, you might want to take a look at the new Northwinds template for ideas.