what are you parameters for: shared_pool_size, shared_pool_reserved_size

Have you considered taking a Heap dump? Then look at the dump once the error occurs. This will help you verify if you have a fragmentation issue or you are truely out of space.