You are not comparing 'like with like'. One is a fixed phrase while the other is just three words.
"By all means" is a fixed phrase. I can't think of a situation where you would use this response and not be granting permission of some kind. As a set expression, its function is equivalent to saying 'Please do', 'Go ahead', 'No problem' and so on.
'By whatever means' is not really a phrase at all: it's just three words - a preposition, a determiner and a noun - that happen to occur together in a sentence.
For example, you could say, "He was determined to get money by whatever means he could", "He was determined to get money by whatever means were available to him". The word 'whatever' has the same meaning as 'any' in this context: you could just as well say "He was determined to get money by any means he could", and the meaning would be the same. You cannot use 'all means' in this sentence.