@Bruce M. Physically he would have made a perfect Romeo, costumes and all... but they would have wanted to use a dialect coach to get him to inflect his voice a certain way, and to "talk Shakespeare"... it might have been frustrating for him that he couldn't just be himself and portray the role as Paul McCartney, not as a 15th century Venetian teenager. He's never had a film role where he didn't play himself.
From what I've read he really was interested in Shakespeare during his school years, but Romeo probably seemed too overwhelming of a challenge for him in 1966-67 (when he was offered the role) and that may be why he decided to pass. There was a (supposed) quote from him in a biography that said he took the actress Olivia Hussey (that played Juliet) out to dinner at the time of the movie offer, and that he "really fancied her," but decided not to do the movie.
I think he could do a film role successfully though if he had the right script and director and creative team behind him.