In Thor: Ragnarok Asgardians like Thor, Hela, Valkyrie are hit several times. Loki even got beaten very badly by Hulk in Avengers. But none of them died. But in the beginning of Avengers: Infinity War Thanos' children were killing them very easily like humans. One stab one kill (Heimdall). So exactly how much damage has to be done to kill an Asgardian? Are all Asgardians gods?
I'd like to believe Asgardians drew their power/strength/protection from Asgard, and hence, after the destruction of Asgard, they were weakened. Think of a concept similar to the OdinForce, but on a scale that covers a whole race, and is drawn or tied to their realm of origin. I think there were some sort of spells that protected Asgardians, and were tied to Asgard. This would explain how Heimdall was able to teleport the hulk without the bifrost, after praying to the "allfathers"
To answer your second question, about all Asgardians being gods..: I'd like to think most of them are demigods, and just a small set, due to their superior abilities, are regarded as gods. I came across a source that mentioned that, though all Asgardians possess some form of superior power in comparison to ordinary humans, a few select of the Asgardians have "special" abilities more superior than those of any regular Asgardian. This set contains characters like Thor, Hela, Loki, Heimdall et cetera.
All Asgardians have super strength, durability, endurance, enhanced speed, and enhanced healing. Many are capable of magic and they all carry a spark of the Odinforce within them.
Not all Asgardians have 'special' abilities, such as control over the weather (Thor), teleportation (Sif), light generation (Balder), or greatly enhanced senses (Heimdall).
In Agents of SHIELD season 1 episode 8, an ordinary Asgardian (ie one with no special powers beyond the general characteristics of Asgardians) is stabbed in the heart and there is some discussion of Asgardian rapid healing while he is given rudimentary improvised medical care to save his life - keeping him alive long enough for his heart to heal itself.
So it would seem that if you tear an Asgardian's heart open, and do not give them first aid, they will die.
Asgardians are normal people - normal living beings of Asgard - but compared to humans, they have super-strength, live 5000 earth years (which is normal for them but abnormal for us), have next-gen weapons (which are magic-level for us - technologically unavailable), etc.
That's why we consider them gods.
Note that in Thor, Fandral tells Thor about visiting Jotunheim: "This isn't like going to Earth, where you summon a little lightning and thunder and the mortals worship you as a god!"
As for who can kill an Asgardian, the answer is simple: someone who can! Like someone that has more strength than them, like Thanos, for whom our gods are little creatures, or someone that has a powerful weapon (like Corvus' glaive), etc.
It is all about comparison; for us they are gods, but for celestials or the one-above-all, they are tiny creatures or just fall under the category of living beings, their creation, etc.