In Romeo and Juliet, do Benvolio and Mercutio have last names? Does it ever explain how old any of the characters are?
We do not have last names for Benvolio or Mercutio. You might note in an obituary that Benvolio is a nephew of Lord Montague and that he is Romeo's cousin, and that Mercutio is related to Escalus, the prince of Verona. Mercutio is also a close friend of Romeo's.
We know that Juliet in the play is almost 14, but other ages are not provided. Romeo is almost certainly a teenager, given his impulsiveness, lack of maturity and the fact his parents worry about him the way parents generally worry about a teenager: as the play opens, his father, for instance, can't understand why Romeo is mooning around his room all day. Given that Romeo is most likely a teenager, we would expect both Benvolio and Mercutio to be teenagers too. Benvolio's solution to Romeo's lovesickness is to advise him that there are plenty of pretty girls in the universe and to go out and find one (fairly standard teenager advice to the lovelorn). Mercutio has the energy, high spirits and lack of forethought we associate with the teen years, and his probable youth makes his death all the more tragic.
To answer your first question, the last names of Benvolio, Mercutio, and Paris are never mentioned. We do know, however, what families the three men are from. Benvolio is Romeo's cousin, therefore he is a Montague. Mercutio and Paris are both relatives of Prince Escalus so although their last names are never alluded to, you do know that they are related to the rulers of Verona. As for their ages, we also do not get that information -- except for that of Juliet. After a conversation between the Nurse and Lady Capulet, the reader finds out that Juliet is almost 14 years old; however, the ages of the other characters, including Romeo are not given. It is generally assumed that Romeo is in his late teens.