Your client is asking for the impossible. The requirements cannot be met by any Java EE application server currently on the market.
When a client app talks to an application server via JNDI, the client JARs for that application server must be in the classpath for the client application. This is a requirement for any application server, not just for JBossAS. However, that does not mean that the client is dependent on any particular application server - if the client is written using the JNDI APIs, then simply supplying a jndi.properties file whose contents are geared towards the desired application server, and making the application server's client JARs available on the classpath is sufficient. In this way the client application is not dependent on any particular application server.
And the only way to connect JConsole to a remote JVM is to launch that JVM with option to tell it to expect such connections. There is no other way to do this, no matter what Java application you are talking about.