I think you will find that "EJB is the core J2EE" is not a universally held belief. Especially because of the performance issues with EJB deployment even in the 2.0 standard. A good read on this is Manning's "Bitter EJB" which goes into detail on EJB performance problems and offers architectural alternatives.
As for having EJBs on a different machine, that is a serious performance problem because of the RMI to do all of the data fetch to build the pages. It means that you are paying a penalty to transit the data to and from the web server to the EJB server and then another transit cost to get it in and out of the database. This is why EJB 2.0 added local interfaces.