fans pay a lot of money to the host
No, they do not.
Most Olympic athletes do not get paid for winning at the Olympics. Many of the countries will pay the travel expenses of the athletes. Most athletes are sponsored and will receive bonus money from the sponsors for doing well or medaling at the Olympics. For more information, please refer to the related link.
No athletes can compete in the Olympics without paying.
no they do not
In most places, no you do not. Most countries do pay a bonus award to athletes that win medals, even the US.
If you win the bid, yes.
I believe that the athletes get paid. However, if another country wants the athlete to play for them, then the athlete will be paid quite a lot of money. Some countries will pay an athlete millions for them to play for them!