1) What is the difference between 言うな! and 言ってんじゃねぇぞ!, in other words can we use them interchangeably at all times?
2) which is ruder?
言ってんじゃねぇぞ
is definitely ruder than 言うな
. The former has contractions, which only happen in casual speech:
iru no → n
de wa → jya
The following contraction is casual, mascline, and rough:
ai → ee
The sentence final particle ぞ
is emphatic, mascline, and rough. With all these factors, the former will only be used in casual situation mainly by male, usually in an insulting situation.
The latter is simply an imperative. It has no connotation about roughness. It can be used as a formal order from a commander to a soldier, an advice from a coach to a sport player, an instruction from a teacher to a student etc. without any nuance of insult (but still showing social rank).
The answer to this question is almost always no. (Why have more than one way to say the same thing, if there really is no difference?)
In technical terms, 言うな is an imperative form, whereas 言ってんじゃねえぞ is a slightly indirect request, of a similar form as 行くんだ (except in the negative). There's also some subtle difference between, say, 言うんじゃない and 言ってんじゃない, I think, but I don't know what it is.
It is also possible that 言ってんじゃねえぞ is not an order. Depending on the context, it could also be translated like ‘I'm not saying that [...], you know!’ Whereas 言うな is pretty much unambiguously an order: ‘Don't say it!’
It's hard to say which is ‘ruder’. There are complicating factors: ぞ is emphatic, and the slurring of ない to ねえ is also characteristic of ‘rough’ speech. On the other hand, 言うな is a perfectly well-formed order, according to traditional grammar rules. The connotations are, accordingly, different. If I had to choose one way or the other, I would say 言うな, being more direct, is the ‘ruder’ one. (But see the comments below.)