"Since when did/have those two become best friends?"
This sentence has the word "since" in it so I think it should be used in the present perfect tense but I kind of think past tense sound more natural. Which one is it?
Your sentence is possible but it doesn't refer to the time they became friends -- it refers to a time before that. Let's say they became friends in 2010. Let's say I knew them in 2008 and they weren't friends then. The correct answer to "Since when did/have those two become best friends?" is "Since 2008".
You can say, "Since when have they been friends?" or "When did they become friends?" Both of these questions should yield the same result - "2010".
In conversation, "since when" is also used to express surprise about learning something or being told something you don't believe, or you want to express that something is just not so, with annoyance.
Since when are you such a wine expert?
Since when are you the boss of the world?
Bob is the manager? Since when is Bob the manager?
This is colloquial - the use of the present tense would not work in formal writing. But you will hear it.
I'm not a teacher, but I write for a living. Please don't ask me about 2nd conditionals, but I'm a safe bet for what reads well in (American) English.
Yes, I agree with all that.
The problem is "since" with "become", as in "Since when did they become friends?"
If two people become friends at a certain time T, then they didn't become friends after time T, ie. since T. They may have been friends since T, but they have not become friends since T. They have become friends since some other time S, which must be before T.