In American Beauty, Kevin Spacey finally gets to do likeable after years of being good at being bad. And he’s up for an Oscar, writes Richard Rayner.