Speak IN + language is literally correct but not natural. It is a typical non-native speaker choice. The "in" is not native when placed immediately before the name of the language.
BUT this would be natural for a native speaker. "Can you please speak to me in English? I don't understand other languages."
You CANNOT say here: "Can you please speak to me English".
In this case, the situation is a live one - two people are speaking to each other and the issue is the possibility of using English to communicate instead of another language. The issue is NOT the general ability of a person to speak a certain language. I think this is the reason for the difference but if others have ideas, I would be interested to read them.