The first thing you need to understand is that 'English' is both a nationality and a language. I'm English, because I was born in England. I'm also British, because England is part of Britain. I speak English, so I'm a native British English speaker.
How you use expressions like 'English accent' is all relative. An American might say that I had either an 'English accent' or a 'British accent'. But someone from Scotland, which is also part of Britain, would definitely say I had an 'English' accent.
Speaking with an accent is not the same as the language you use. In American English there are some words used differently from British English, but you could still say an American word in a British accent, and vice-versa. For example, an American calls the front of a car a 'hood' while we call it a 'bonnet', but both these words exist in both languages and different accents put differing inflections on them.
Someone from a non-English-speaking country may not be able to differentiate between different types of accents, such as British English and American English. They may not comment on the accent of someone speaking English and just say "they are speaking English". But if the same person spoke their language, they may say, for example, "he speaks French with an English accent".
To sum up, an "English accent" could mean that someone's accent reflects their English nationality, or it could mean that someone is speaking another language with the accent of someone whose native language is a type of English. Of your three options, only the first is really idiomatic in true reference to someone's accent while speaking English. If you were more specific about what you were really trying to say there may be other idiomatic ways to express that.