Is it necessary to speak like a native?
In a word: no.
Speaking well by no means requires you to speak like a native English speaker. You can be fluent and fully proficient in communicating your ideas without ever having to sound like a native. For the purpose of discussion, I'm going to be considering three aspects of language: accent, idiomatic expressions, and connected speech. While good communication with native speakers will require you to understand the aforementioned aspects, reproducing them is not necessary. In short, you can be fully intelligible with a non-native accent and without using idiomatic expressions or connecting your speech.
Let's be clear about one thing, everyone has an accent! There's no such thing as not having an accent. When English learners say they want to speak English without an accent, what they really mean is that they want to speak English without a non-native accent. While that's a valid goal, it's not necessary. It is possible to have correct and fully intelligible pronunciation while maintaining a non-native accent.
There is a common misconception that native varieties of English are more valid than non-native varieties. This is especially true of accents, with many English learners viewing a native accent as the ideal they should strive for. I think this type of thinking is unproductive at best and toxic at worst. Again, if being able to perfectly imitate a standard American, British, or other native accent, is something you wish to achieve, go for it! But just remember that as long as your English is intelligible, there is absolutely nothing wrong with having a non-native accent.
Every language has its own idiomatic expressions. Learning idiomatic expressions can be a fun way to connect with the history and culture of a language. If you communicate with a lot of native English speakers or consume a lot of content with native varieties of English, it's definitely a good idea to learn some common idiomatic expressions, but there is no need to use them in your own speech to speak well. In fact, when considering English as a lingua franca in an international context, it's probably best to avoid using native English idiomatic expressions since most English speakers are non-natives.
Imagine a boardroom meeting taking place in English with ten business executives, eight are non-native speakers and two are native speakers. Is it more reasonable for the non-native speakers to be expected to learn native English idiomatic expressions, or for the native speakers to simply avoid using expressions and use more objective language?
In linguistics, connected speech refers to the joining of sounds in spoken language, for example, when an American asks "what do you want?", it will probably sound more like "whadayawant?". The question of connected speech is just like native accents, it's wise to be able to understand it but it's not necessary to reproduce it in your own speech.
As an English teacher, I'm careful to speak slowly and enunciate my words clearly. In a native English-speaking country, however, you cannot expect people to speak like I do. They are going to speak fast and they are going to connect their speech, so if you struggle with connected speech you're going to have a hard time understanding them. On the other hand, you can speak slowly without connecting your speech and no one will have any trouble understanding you.
So, do you need to speak like a native?
Definitely not. If you want to communicate with native English speakers you need to understand them but not necessarily speak like them. So be proud of your non-native accent, it means you speak more than one language!