You may also want to consider setting it up with the extproc.ora file in the $ORACLE_HOME/hs/admin directory instead of using the listener.
From the oracle doc:
"The default configuration for external procedures does not require a network listener to work with Oracle Database and the extproc agent. The extproc agent is spawned directly by Oracle Database and eliminates the risks that extproc might be spawned by Oracle Listener unexpectedly. This default configuration is recommended for maximum security. "
ArcGIS 10.1 does not support Oracle 11.3. If you've successfully used the same configuration on a 11gR2 listener and it still doesn't work, the issue might be 11gR3.
You may also want to consider setting it up with the extproc.ora file in the $ORACLE_HOME/hs/admin directory instead of using the listener.
From the oracle doc:
"The default configuration for external procedures does not require a network listener to work with Oracle Database and the extproc agent. The extproc agent is spawned directly by Oracle Database and eliminates the risks that extproc might be spawned by Oracle Listener unexpectedly. This default configuration is recommended for maximum security. "