Hi Vikram,
Both option 2 and option 3 are good. But It is always your call to select an option
Option 2 : You can store the file in a DB table(a Ztable). Please refer to the below links
http://scn.sap.com/thread/976467
http://scn.sap.com/thread/988559
Option 3 : You can write the files to application server(even in multiple server case). There is no issue in using this option as you would always be getting the files in foreground execution(for display in WDA applications). This scenario does not work for background execution(please check the link)
Option 4 : You can save the OTF as GOS attachment.
http://wiki.sdn.sap.com/wiki/display/Snippets/Save+SmartForms+OTF-output+as+GOS+PDF-attachment
Don't know much about how to get option 1 working
I can add 1 more option to your list. Just give a thought on using MIME repository for your requirement.
http://help.sap.com/saphelp_nw04s/helpdata/en/44/15a40b56080d1be10000000a114a6b/content.htm
http://scn.sap.com/thread/1764626