If you can afford to have a temporary file on your application server you could transfer your file from the client to the ias using webutil and do a http request from the db server using UTL_HTTP to request the file from the application server. You'd need to store your tempfiles in a location where an Apache alias points to, so you could request it from there. Or if you manage to read your file into a CLOB in some way you could write it down using DBMS_ADVISOR
Of course the method using utl_http would have the drawback of tempfiles you'd need to delete, and the method using dbms_advisor would imply that you could read GBs of files into memory which essentially would blow your servers into pieces.
As your database machine runs on linux the far easier way would be to create a network share on your application server (depends on the OS the application server runs on; maybe smb in case of windows, maybe nfs in case of *nix) and permanently mount this share on your database server and make it accessible to the oracle owner. You'd simply need to transfer your file to the AS then using webutil.
If your AS runs on linux too and you plan to use your CSV file e.g. in a external table it would be advisable to have it the other way around; a share on the database server mounted by the application server, so you wouldn't have to pull the file over the network every time you query your external table.