The reason why you may find painful and joyful inconsistent is that the suffix -ful can be used in different ways. Originally it probably meant "having much x", as in joyful; but it also came to mean "entailing much x", and even "causing much x", which isn't a large step from the middle stage. There are countless -ful words with either sense, or both (cf. doubtful, though the sense "having doubt" is now less frequent).
[Edited:] I doubt whether syntactic labels like "active" and "passive" would fit very well. Though I don't think it is a common thing to do, you could use semantic/thematic roles/relations to describe affixes.
In a joyful man, you could say that the suffix -ful governs the noun it is attached to (value 1: joy) and the noun it is an attribute to (value 2: man) according to different patterns. In this case, we need to supply an implicit verb "experiences": a man who experiences joy. Then man is the Experiencer (see the link above), and joy is the Natural Cause or perhaps the Theme.
In a painful needle, we have an entirely different semantic relation: we need to supply a verb "causes": a needle that causes pain. Pain(1) would be the Theme or Patient; needle(2) would be the Natural Cause. A potential Experiencer is not expressed.
However, my choice of verbs was somewhat arbitrary: I could instead have chosen different verbs, which would have resulted in somewhat different semantic relations. That is the problem with semantic relations: they are never exact, and always rather vague and flexible. They should not be used to construct a systematic model, but rather as an additional illustration when trying to understand language—never as proof of anything. As you saw, even with the verbs I chose there were several semantic roles that might have fitted; and those roles on Wikipedia were merely arbitrary decisions as well: you could very well make up your own roles if they would fit your models. But this is the only somewhat categorical analysis I could think of for your adjectives. [/Edited]
About adjective senses in general: some adjectives attribute an emotion to the noun they belong to (sad); others attribute to the noun an ability to cause an emotion in something else (saddening); others again attribute something entirely different (pointy); different adjectives just have different meanings, and I do not think adjectives pertaining to emotion are anything different.
Then there are also adjectives having more than one sense, like just: "[person] making decisions according to justice", "[decision] made according to justice"; it depends on the kind of noun it belongs to, or even the broader context, which sense we use.
We may also use metaphor to change the meaning of adjectives, as of any word. In addition there is the gradual change of meaning that naturally occurs in most words over time; often this meaning gets forked, which results in two slightly different senses, as with -ful. The word flat normally means "having a physical surface that approaches a segment of a plane"; but it is also used in the sense "lacking carbon-dioxide" with sodas; this all becomes "logical" when you understand the stages lying between original and result.