Okay, so this might be an unpopular opinion.
I just watched it again for about the 30th time, but this time I was paying particular attention to Gwyneth's performance, and (deep breath) I think she deserved the Oscar.
Cate Blanchett was stunning in Elizabeth, but let's remember that Gwyneth was essentially playing FOUR different roles here. Viola De Lessops, Viola as Thomas Kent, Thomas Kent as Romeo Montague and then Viola as Juliet Capulet, and all four of them were mesmerising.
She was absolutely charming in this film, it is obviously one of her best, if not best, film performances of hers and the Academy clearly agreed.