Sequences do not guarentee that the numbers returned are sequential, they only guarentee they will be ordered and unique. There would be a performance overhead trying to do this and, considering what sequences are for, its not a featrue that is required. So there is nothing in Oracle to let you tell it you didn't use the sequence value so don't increment.
2)Or is there any other option with which the sequences can be generated and set in the JMS Message object itself and be retrieve on the next redelivery attempt?
You certainly could maintain a counter in your applciation. However, it would be accessable to your application alone and would not work in a cluster.
Why is the order reference important? Sequences are usually only ever used for surrogate keys.