There are at least a couple of layers to this question. Details about your sexual history are no one’s business but yours. You have a history. I’m presuming that he has a history too. It is only necessary to share with each other that you each have a history. If either one of you had a negative experience that will effect your relationship with each other, that does need some talking through. If you contracted a transmittable disease, you are responsible for telling your partner that you are taking the right precautions and/or getting treated for it. And, of course, you do need to talk about protection from an unwanted pregnancy. But beyond that, past encounters are generally private information.
Then there is the issue of your lies: Sometimes the unconscious has a way to raise red flags even when a person doesn’t consciously see them. I think you know you aren’t really ready to be talking about marriage. You are only 18. You need more years to mature and to figure out who you are before settling down with anyone., especially at your age. Before making the decision to marry, you need far more contact and time with a boyfriend than a long distance relationship can allow.
I think your unconscious helped you out by letting you violate a primary value held by your guy. On some level you knew lying would be a deal breaker. But instead of breaking up with him, you have made it possible for him to break up with you. Maybe it seemed easier to deal with guilt than to deal with rejecting someone you really do like. Whatever the case, I doubt very much you can fix this. Even if it looks like you do, chances are you will do something else to set a break-up in motion.
Trust your inner self. Apologize to the guy. Wish him well. And do the growing up you need to do to be the kind of partner I know you would like to be.
I wish you well.