Bem vindo ao GUJ Leonardo
Seu sistema necessariamente deve ser desktop? pq se não, você pode pensar em um sistema web, assim o unico trabalho seria instalar o servidor (que na maioria das vezes é fácil) e os terminais iriam acessar através de um browser.
Caso seja um sistema desktop (Swing, Thinlet, etc)
A nivel de banco de dados, existem alguns free no mercado, como Firebird, PostgreeSQL, HSQL, etc. Todos são bem tranquilos de instalar, e você vai precisar instalar apenas no Servidor!! os terminais apenas devem saber o caminho fisico para o servidor, isso pode ser armazenado dentro de 1 arquivo .properties por exemplo.
Dependendo da base de dados e da quantidade de memoria do servidor, você pode usar o Prevayler para fazer persistencia.
Relatório você pode usar o Jasper mesmo, eu particularmente nao conheço outro tao simples.
Você pode usar uma IDE Free, existe no mercado o Eclipse, NetBeans, JDeveloper, etc etc etc. a Galera aqui prefere o Eclipse, eu tb sou mais o eclipse, mas lembrnado que eu só trabalho com sistemas WEB
Se for WEB, você não se preocupa em distribuir sua aplicação, instala no Servidor e os clientes acessam via Browser. Se for desktop, você DEVE utilizar o JWS (Java Web Server), no forum ja foi muito comentado sobre ele
Espero ter ajudado e esclarecido algumas idéias