So the earliest hard fork should happen around 2038?
It shouldn't. But it may be the case. You can run your full node, and switch your system clock for example to 2040 or 2110. If your node will crash, or will stop accepting new blocks (for example in regtest mode), then you are affected. If it will keep producing new blocks, then it works as intended. So, instead of trusting me, you can just run it offline in regtest mode, and figure it out directly, on your computer (and because of regtest, you don't have to download existing chain).
And what's the motive behind 32-bit timestamps?
This is the size of the timestamp field in block headers. The 2038 year problem may happen, because it is converted between signed and unsigned integers. The 2106 year problem will happen, because then all 32 bits will be exhausted, and it will overflow into zero again. And yes, it can be solved for example by using time modulo 2^32 (because 136 years time accuracy is more than enough for 10 minute intervals), but even that simple change would mean, that old nodes could simply crash, or refuse to accept new blocks, and from their perspective, the chain will simply halt (which means, that users will have to upgrade, but it is hard to guess, to which version they would like to update).
Did Satoshi want Bitcoin to be compatible with 32-bit x86 CPUs?
Well, it is just a design mistake. Amount of coins use 64-bit values. So it was possible even then, to implement that differently, or to even use something like VarInt, to make it forward-compatible. Or, even better: it could be just VarInt, relative to the previous block. But it is what it is, and we have to deal with that somehow in the future.
Edit: If the size of the timestamp would be 8 bytes, instead of 4, then the size of the whole header would be 84 bytes, instead of 80 bytes. And note, how conveniently it is 84=21*4, so people could see the magic number "21" again (and also, it would be historically correct, because Satoshi changed coin supply from 20 millions in pre-release version, into 21 millions in the current one, by switching from 15 minutes block time, 100k blocks per halving, 30 days difficulty adjustment, and 100 BTC reward, into what we have today).