He did not knew cyclop was Poseidons son. At that point, Odysseus was pirate during pirate things - stealing from random island. Cyclop being Poseidons son is Odysseus being unlucky (or just karma). There was no intention to attack Poseidons family.
Odysseus did not killed Helios cattle, he told his men not to do so. His men did killed them after they disobeyed Odysseus.
Athena argues that Odysseus did sacrificed a lot more then usual towards gods at one point.
I dont know what Odysseus claimed after he beat Troy, sorry.
I know the blinding and taunting of the cyclops was when he pissed off Poseidon. But I seem to recall that other gods were mad at him too.
Edit: killing Helios cattle was also a bad move.
Odysseus had the favor of Athena though, and I don't think he ever lost it.