Yes, it's true: it is actually a question that you should ask yourself. Unlike in some Protestant churches, in the Catholic Church not everyone can always receive the Eucharist, because we believe that what we see on the altar is much more than just a symbol.
The Eucharist is the Body and Blood, Soul and Divinity of Jesus Christ. It’s not just about remembering what He did at the Last Supper, it’s about truly consuming Him. That’s why in the Catholic Church, people have to study and learn about the faith, about Jesus, about the Eucharist, and commit themselves to living according to His will (as understood by the Catholic Church) before they can receive the sacrament. So in order to receive the Eucharist, you have to be Catholic. And when even Catholics break that commitment to live with Him and in His grace by committing grave sin, they should not receive Him.
Receiving Christ is not a right… for anyone. It is a gift. Imagine a young man falls in love with a girl and wants to propose to her and give her a ring. When he proposes, she says to him, “I want the ring, but I don’t love you.” So he asks her, “But do you want to love me? Do you want to live with me? Do you want to be with me?” And she looks at him, smiles, says no, takes the ring and walks away.
That’s kind of like what we do when we receive the Eucharist in grave sin. We want the gift but not the commitment. Or sometimes we don’t even really want the gift; we're just embarrassed not to take it. So if you are living in grave sin, it's not that you’re not worthy, because, given that it’s the Body of Christ, no one is worthy. And it’s not that people are saying they’re better than you: it’s that someone is giving you Himself and you are withholding yourself.
So do you have to be perfect to receive Him? No. Not at all. Even if you are in grave sin, He wants you to receive Him, just not yet. He wants you to go to confession first. And be careful, because sometimes things that may not seem that grave to you, like missing Mass on Sunday for example, or "going too far" with your girlfriend or boyfriend, really are grave. So it’s best to go to confession just in case. Here's a link to a good examination of conscience.
So if you think maybe you shouldn't be receiving the Eucharist, own it. Take responsibility for what you have or haven't done, and go to confession. It will clear your conscience, reconcile you with God and the Church, and give you a fresh start. You will be able to participate in the Mass like the Church asks: immolating yourself on the altar with Christ. You will be able to surrender yourself and your way of life, to Him, who surrendered Himself and His entire life for you.