Shreyas, for your point 1. you are correct. I had the other solution by extending the CreatePackageFormProcessor. But of the two solutions(Listener and customizing FormProcessor) the listener was chosen saying changing in OOTB form processors is not a better approach, seeing future management of code and also listener is independent of any PTC future change.
For your point 2. I would not go as we would be changing OOTB solution again.
My only point now open is for using OIR.
Could you please share your thoughts on this?