I can answer a few of your questions; I shall leave people with more time to answer about MVC. I would have thought most of your answers will be in a standard Java book . . .
The Swing classes are newer than the awt (=Abstract Windowing Toolkit) classes; awt classes mostly live in the java.awt package and Swing in the javax.swing package. A few awt classes (eg BorderLayout, Color) are used unchanged by Swing. If there is a Swing class with similar functionality to an awt class, they have the same name with the Swing class having a J prefix. So you can look for Button or JButton. I think Swing was introduced in J1.2, am not certain.
What they mean by "heavyweight" (ie most awt classes) is that they "borrow" the operating system's display mechanisms, so a Frame on Windows looks like any other Windows Frame, but the same program on a Mac will look just like any Mac window, etc. Swing classes use their own look-and-feel (most people leave the default, which is called "Metal", unchanged), so they are supposed to look the same on any OS; not using the OS mechanics is called "lightweight."