Right, it's not illegal for you to be in the pub providing you are not drinking alcohol. HOWEVER, many places have a policy of not allowing you to stay if you cannot produce ID because they get randomly checked by the police from time to time and don't want to take the risk that someone has been sneaking you booze because they have too much to lose.
Many places have challenge 21 or 25 which is a policy that states that the bar staff must ID if you look under 21 or 25, even if you clearly look over 18.
Best thing for you to get is a citizencard. You don't have to worry about having your birth certificate or passport as all they require is a signed photo of you signed by some like a policeman, lawyer, teacher, etc who has known you a long time and they are goverment approved.