Postgres Partitioning: Edge case issue on date column partitioning
The check constraints of your partitions are strange.  They don't exclude the possibility of an order from DEC2015 being inserted into the JAN2016 table.  This might not be an issue about inserting, but it makes constraint exclusion not working nicely.  Fix this by specifying a beginning date, too.

That aside, the problem of having an order and its lines in the corresponding partitions can be easily solved.  Things depend a bit on how the submitteddate is calculated.  

First, in the simple case I would not add such a date to the order lines - the timestamp of the order usually defines the former.  However, if there is a possibility to add lines later, your problem is inherently unsolvable: you either cheat and register lines from the next month with an earlier date, or have lines for a given order in different partitions.

On the technical side, ensuring that all dates are from the same day is easy.  Use a transaction to add the order lines alongside the order (this makes sense in any case), and in this case CURRENT_DATE will return the date of the start of the transaction, even if the last insert flow over into the next month.