1) io lascerei stare EJB (se non è un requisito) ma implementerei la logica applicativa con semplici java bean
2) non è tanto ovvio che tu debba usare servlet per la presentazione dei risultati; anzi. Se accanto a file xls vuoi mostrare del codice html ti consiglio vivamente di usare jsp
in linea generale dovresti imparare cosa significa implementare un'architettura secondo il design pattern MVC; in Java di solito il Model viene fatto da java bean o EJB, le View dalle jsp e il Controlle da servlet.
In rete ci sono molti tutorial; però ti consiglio un ottimo libro (anche se in inglese) per la creazione di applicazioni Web: Head First Servlets and JSP, Second Edition ( http://oreilly.com/catalog/9780596516680/ )