Some common cancers are now more likely to be caused by obesity than tobacco, a charity is warning.