Shouldn’t doctrine be consistent?
It is.
To the layperson such inconsistency would be like a deviant right hand and Jesus told us to cut it off.
Only if that layperson misinterprets Scripture and/or uses their own definition of ‘doctrine’.

. Let’s take a look…
It depends on where the definition of sin comes from. Leviticus 18 19 says that sex during menstruation is a sin.
Actually, it doesn’t. Take a look at the text again.
It says that it is “an abomination” and it says that it “defiles” a person.
A thread on this forum says that it is not.
So, here’s the nuance: the part of Leviticus that you’re citing describes commandments of the Mosaic Covenant. Christians are not held to all of the prescripts of the Mosaic Covenant. So, although it was “law” for a certain group of people in a certain timeframe, it is not “law” for us (especially us Gentile Christians).
This is where it’s necessary to understand the distinction between the commands of a covenant, a law, and a Church doctrine. Each of these three is distinct from the other.
Church doctrine is based on Christ’s teaching. If something is declared as doctrine, then we believe that it’s so from Christ’s teaching (either during His ministry, or in the expression of His teaching in the Bible).
If something is declared as doctrine, then it fits this criteria. Let’s look at the example you gave – homosexual sex. We would say that this is a sin not because it’s part of the Mosaic law, per se, but because God declared the proper expression of physical love to be solely within marriage (see Genesis, as well as Paul’s description of sinners in Romans).
Just because something is part of the Mosaic law, it does not follow – for that reason – to expect that we’d call it “doctrine”.
So, I think it’s important to have a firm grasp on what the Church means by “doctrine” and how it understands it to come into existence. Once a “layperson” understands these concepts, there is no longer the possibility of an misunderstanding of “inconsistency.”
Finally, to take Christ’s discussion of “cutting off sin” and to interpret it as a command to “cut off a definition of sin” is really apples and oranges…
