It's definitely a blend of existing phrases by analogy.
There are four related phrases:
"on all accounts"
"on all counts"
"by all accounts"
"by all counts"
Personally I find "count" easier to count (

), so that's where I'd see the actual numbers working better, but those phrases tend to have slightly more specific meanings (such as "measurements" or legal charges).
"by all accounts" is about 3 times as common as "on all accounts", so this may be one of the oddities:
Would "by two accounts" sound better? Yes, I think so.
"on all accounts" is, I think, a sort of idiom. It's not really a productive part of (modern) English, but it's still used. So using "on two accounts" is by analogy, not rule. That's sort of like saying:
"It's raining cats and dogs" > "It's raining pigs and sheep"
We can still understand the second one, but it sounds a little odd, because it's generated by analogy, not by a rule. And in this case, "two accounts" is much less abstract and much more literal, so it's not even that strange.
So in the end, you could say:
"by two accounts" or "on two accounts" -- "by" sounds more natural to me, although both seem novel.
I would not expected to here these in normal conversational English, but I wouldn't be extremely surprised by them either.
This might be an instance of non-native speaker innovation. For example, "homework" is a mass noun (uncountable), like "furniture", "luggage" and "water". But non-native speakers have said "homeworks" so often that now it doesn't sound very strange to me-- in fact, when I have the need to count "homeworks", I will use that form.
So it's non-native, but it's more or less valid. Interesting.
(Note: I'm a speaker of American English, in case that matters for dialectal reasons.)
Very short answer: you're right-- "for two reasons" is clearly the more normal way to say this. But the others are more or less ok too.