So, we need some way for Stalin to convince the Western Allies that Poland, one of the victors in the war against Nazi Germany, and having suffered terribly, should nevertheless lose a third of its pre-war territory to the USSR with only minimal territorial gains in the west.
You got it backwards. It was Stalin, NOT the Western Allies, who was supporting Polish demands for Odra-Nysa line. Which is not suprising, as it guaranteed continuing Polish-German enmity - which allowed USSR to play arbiter and distracted Poland from lands lost to USSR. Remember, that OTL it was expected that after the end of ocupation period, there'd be a single Germany - the partition into GDR and W. Germany only took place after 1947.
I'm just trying to cook up some reasons for this ATL borders to become feasible. And part of this is, among others, that Stalin decides early (say 1944 but keeps it secret) that he wants to have a east german satellite of decent size and power, even at the expense of not compensating Poland (with the baltic nations getting an even worse deal it wouldn't be too surprising)
You are being anachronistic here.
Giving Silesia and Prussia to Poland was compensation for Stalin taking Poland's western lands. That compensation was the only thing that made Stalin's move palatable. Only giving Poland East Prussia is likely not enough. Perhaps Poland is also able to keep other areas in the east where Polish population is fairly high, like around Lvov?
Furthermore, by giving Poland Konigsberg, Stalin will not have a year round ice free port on the Baltic Sea. It's why Stalin wanted it. An extra port for Poland doesn't give Poland much to compensate for its losses, and Stalin loses a major prize.
Just noticed Hamburg was not part of a capitalist Germany. That basically means the Red Army had to occupy it instead of the Americans.
That is not going to happen. FDR wanted the major ports so that the US Army was not dependent on anyone for sea supply access. In fact, originally the US wanted to occupy the northern part of Germany and not the southern precisely so that the US could quickly withdraw its troops, but the preparations for D-Day didn't take that into consideration. Instead, it was agreed the US would occupy the ports postwar instead.
There is no way the US is going to agree to not having those ports.
Stalin wanted to have a buffer zone of satellite states in eastern Europe, which has nothing to do with any unforeseen cold war. Adding a part of Germany into that buffer doesn't seem that strange to me.
The problem is that the Russians would want something instead, and I Poland to have Prussia, so what are the options? All of Korea? Hokkaido? A communist Finland? A communist Greece?
They already have the port of Klaipeda which also is an year round ice free port, and that in OTL they used for a military port.
Not necessarily. IOTL, Allies didn't occupy Berlin, and they got a part of the city. Why can't the soviets claim the same for Hamburg?
IIRC, the British were the ones who controlled Hamburg, not the Americans. But supposing the Americans don't want the Russians to have a share of Hamburg, then the Russians should be able to deny the Allies the right to have a share of Berlin.