I don't believe that writing your FEA program in Matlab is a bad idea. Matlab provides some handy solutions for quick software development. Also, I, myself, have already written a FEA software in Matlab.
However, there are two drawbacks. The first is that if your system is large you'll need more performance than Matlab can provide you. Then, for high performance applications, Fortran would be the best choice, although it is not a user friendly language at all.
The second drawback is that Matlab supports object oriented programming, but it is not as well implemented as the simple m-code, so if you want to develop a object oriented program, things would be a little more confusing, and in this very case I'd tell you to try using Java or Python, or evn C++. However, in these three languages you'd have to start from the very beginning, by implementing mathematical data structures and so on.
I'd be too lazy to code own, since there are so many available. How about trying Elmer (http://www.csc.fi/english/pages/elmer )? It has full capability for multiphysics problems and even parallelisation.
I've also built a FEM solver by hand, but wouldn't recommend it.
There's a lot of packages out there that will give you a good head start. I thought this one looked pretty good to get going quick in your choice of language:
Also, "Trilinos" is a more comprehensive set of packages by Sandia Labs that should get you going through pretty much anything, with probably a bit higher of a learning curve:
http://trilinos.sandia.gov/packages/
However, I would look seriously at the Sundance package. It looks like it could get you going quick, if you're on a Linux machine. (I tried once to build once on Windows, but it's a pain in the ass.)
Get your linear solver and (maybe) mesh generator in a high-performance language like C++, and the speed of all other operations should be insignificant.
I decided to write my FEM with MATLAB, and have a try with the Object-Oriented style, thank Vinicius and Kambiz a lot. And I am also glad to receive wonderful ideas from Kari and Troy, my work had to run on Windows, but they will still give me great help. Also thanks to Alberto, I would consider that book. Thanks again!