You should show the relevant code sections of both programs to give us a chance to help.
I would EXEC CICS LINK to the second program and pass a common area containing your copybook. All fields have to be filled properly before. When CICS invokes your second program, this module has to have a linkage section with a common area defined analogically. In addition the second program must use the USING clause on the PROCEDURE DIVISION declaring the copybook you have defined within your linkage section. A good practice is to check first the length of the common area before you process the data.
If you have done all this, I can't see any reason why it should not work properly.