Shallow Hal opens with a nine year old Hal talking to his father on his deathbed. His father gives him some politically incorrect advice about women. Then the movie transitions to Hal as young adult, played by Jack Black, along with his friend Mauricio, played by Jason Alexander, trying to dance with women way out of their league at a nightclub. As they try to introduce themselves to women who aren't the least bit interested in them, this is the first scene of many in the film that seemed kind of creepy to me. The scene feels really awkward.
Hal and his friend Mauricia are incredibly shallow and only see women for their beauty. However, because of their attitudes, they aren't having much luck with women either. Hal accidently gets stuck in an elevator with self help guru Tony Robbins (played somewhat amateurishly by himself), who realizes just how much Hal objectifies women. So Tony hypnotizes Hal to only see "the inner beauty" of people. This leads to Hal meeting what he thinks are many beautiful women, but these same women don't seem beautiful at all to his friend Mauricio.
Hal meets Rosemary, played by Gwyneth Paltrow, who is morbidly obese, but to him she looks like a supermodel, which naturally Gwyneth Paltrow does. (Thanks to Hollywood magic, the actress plays both the thin and fat versions of Rosemary.) This leads to many funny misunderstandings, and the movie is filled with fat jokes. In his review, Roger Ebert's said that the movie is funny, and he is right, but the film has a creepiness to it in the way it uses jokes about physical appearance as humor.
Hal falls in love with Rosemary, but the hypnotic spell doesn't last forever, and in the end he is forced to confront his feelings about her and his attitude toward women.