accused of a sin for a behaviour

Solution 1:

You can, but it has nothing to do with accuse. You are simply using for instead of because.

I was accused of negligence because I was lazy.

I was accused of negligence for being lazy.

It is a matter of style, and I would not say I would definitely accept it, since it makes you doubt just the way you explained: which preposition is it? did the author use accused for and so on? As soon as there is more doubt in one version than in the other, the latter is more acceptable.

Your sentence might sound better this way:

My uncle is often accused of racism over his wicked jokes.

Now there is no doubt.

Solution 2:

The word order after 'accuse'is like this : Accuse (some one) of (something)

That is to say : Accuse(IDO) of(DO)

Let us presume, in active voice we have a sentence like this : I often accuse my uncle of racism (for his wicked jokes)(adverbial adjunct).

The preposition 'FOR' here can be substituted by 'because of' by way of', 'by reason', by dint of etc. without hampering the meaning.It remains there as it is, no matter the sentence is changed from active to passive.

Of course, there are verbs , for example 'DIE' that takes numerous particles as 'of/for/by/from/through/on and many more,and, to quote you, ever increasung no. of objects. 'Accuse' is not such a verb and we must also remember that with the inclusion of each particle there is a twist in meaning. In our present example, it no third object but an an adverbial phrase prepositional in construction.