1- What is the limit of receiving per wallet? (I think it was 100)
None. You can have a basically infinite number of addresses.
2- Once you generate 100 addresses, does the program prompt you that if you generate more than 100, the oldest one will be replaced with the new one?
Because if this is not the case, it's pretty insane since you could lose receiving addresses that you generated years ago and are still used by people to send you money.
No, old addresses are not deleted or replaced. You just keep generating more and more.
The 100 addresses thing is actually a lookahead keypool, mostly useful for backups. Basically, 100 keys are generated, and when want a new receiving address, it gives you one of those 100 keys and generates another one to replace it in the keypool. The one given to you is removed from the keypool and held onto elsewhere as a "used" key. Keys are never deleted or replaced so you can have hundreds or thousands of keys used in your wallet.
3- How do I check how many addresses I have generated thus far to know how many do I have left?
Go to the debug console and use the
getwalletinfo command. That will tell you how many keys are remaining in your keypool. The keypool is refilled every time you unlock your wallet, so it should be 100 keys (it may be 1000 if you are using Bitcoin Core 0.15+). I don't think there is any way to see how many keys have been used, but that shouldn't be hard to implement.