Gradable nouns are those that take degree modifiers that indicate the size of a property intrinsic to the noun. (This is a technical topic in linguistics.) A degree modifier is an adjective in a hierarchy of magnitude going up:
Let's start with some nongradable examples. When mathematicians announce
A computer search has found an enormous prime number.
they mean that they've discovered a prime number with a large number of digits in its representation in a common number base. The word enormous just means large in some standard measure of size. The mathematicians don't mean that this number is enormously prime, because all primes are equally prime. Each has exactly two divisors, and that's all that can be said about the property of primeness. The noun prime is not gradable.
When my neighbor drops by, sees my pet, and says
You have a large cat.
she means that my cat weighs seventeen pounds in the same way that if she says
You have a large house.
she means on an appropriate scale (square footage or number of rooms), the size of my house is big. If I owned a lion, she might say, "huge cat," and if I lived in a mansion, she might say "enormous house." But she doesn't mean that my cat has more "catness" than other cats or that my house has more of what makes a house a house. A cat is a genetically-defined species, and cats differ in many qualities, but no cat is more of a cat than any other cat. That is, cat may be comparable by attribute but it's not gradable.
Last example, fruit. A fruit is defined by botanical parameters: it's a fleshy, seed-bearing product of the ovary of a plant. As the OP notes, one fruit might be sweeter than another, but no fruit is more of a fruit than any other. An apple might be sweeter than a banana, but its not more or less of a fruit than a banana. The noun fruit is not gradable.
Now let's take a gradable example. Suppose my boss calls me into his office and says
You're a big idiot.
I'm sure he doesn't mean that I'm 6'4" tall and weight 250 pounds. He means that on his private scale of stupidity, I've done something, some big thing, wrong. I can hope he's not too mad because he's had employees who were worse, maybe gigantic idiots. But if so, that won't be because they're taller and heavier than me. Idiocy has its own intrinsic meanings of degree unrelated to physical size. Thus idiot is gradable.
I'm not qualified to discuss the technical aspects of syntactical properties that indicate gradability, but there are a couple of simple ones beyond the definition I've given. The first is that gradable meaning is only available for adjectives in the attributive position. In English, that's generally in front of the noun. It's not available in the predicate position, i.e., after a linking verb. For nongradable nouns, these constructs mean the same thing. So the following two sentences mean the same thing:
attributive: You have a large cat.
predicative: Your cat is large.
but for gradable nouns, the meanings are different. Thus the following mean different things:
attributive: That person is a big idiot. (He's very stupid.)
predicative: That idiot is big. (He's stupid and he's large.)
Another way to tell a gradable noun is when the noun allows degree modifiers from the up hierarchy, but not the down. So we know that a large idiot isn't quite as stupid as a huge idiot because idiot allows us to climb the up hierarchy of stupidity. But we don't talk about small idiots or tiny idiots to indicate small and smaller (respectively) levels of stupidity.* Of course, some gradable nouns take degree modifiers from both hierarchies, so the single-hierarchy test is limited.
* The expression, "You're a little idiot." is available, but the word little here isn't an expression of size on any scale; it's a use of the diminutive as an indicator of contempt.