I tried to mimic your problem and came up with something similar. I received Error 1000 stating that the 'The VI is not in a state compatible with this operation'.
I think you were missing an input on your Open VI Reference VI. You actually have to prepare the VI for a reentrant run. You can do this by wiring a constant value to the 'Options' terminal of Open VI Reference. Refer to the detailed help for the Open VI Reference:
Here is the part that I think will solve your problem
" options is a bit set that specifies how the VI reference is treated. options can be a combination of the
following values.
0x08 Prepare for reentrant run. Reserves the target VI so it cannot be edited and if the
target VI is reentrant, allocates a dedicated parallel data space for this VI reference. If the
target VI is not reentrant, the function returns an error. When you release the VI reference,
LabVIEW unreserves the reentrant target VI and deallocates a parallel data space. When you set
this option and use the Run VI method, you can run multiple instances of a reentrant VI
simultaneously. Refer to the examples\viserver\runvi.llb for examples of using this option."
I am attaching a VI that demonstrates the same. Note, once you create the constant you have to change its format to Hex and then type in the value '8'