Considering your previous programming experience i'd say your a leg up on most who have such ambitions, have you finished any previous projects? The real question though is do you have any experience in Network Programming? Network Programming is often considered a bit of a separate field with its own complexities, and much of the overhead in MMO's deals with the networking aspects, security, stability, authentication, etc. Its also
not the kind of thing you want to "tack on" after the fact, as you'll have to structure the core game around sending/recieving input and/or game state, if you end up doing it that way you'd be creating a massive headache for youself.
As for engines, there a list
here, as already mentioned Unity is a popular choice, along with the Unreal, and Source Engine. Considering your working with 2D you could also try using OGRE.