Is it true that opening the channel and closing the channel each costs $1, so that the total cost is $2?
Yes. You will still need opening and closing transactions for the channel, and will have to pay the network fee for each transaction.
So, she has to open a channel to Bob, after 100 days close the channel, open a new channel, and after additional 100 days, close the second channel. Is it true that the total cost now is $4?
Maybe. If you were talking about a single direction payment channel, the answer would be yes, but lightning channels are bi-directional. A channel only has so much money in it to begin with. In your situations, we are assuming that Alice is fronting all upfront money for the channel, but this doesn't have to be. It could just as easily be both Alice and Bob who split the funds that are tied up in their channel. Let's say they both put 100 mBTC into opening the channel. Now the most that can ever travel in either direction is 100 mBTC, so if money only ever flows from Alice to Bob, then a new channel will have to be opened when Alice's upfront money is all sent.
What you have forgotten is that in the lightning network, Alice and Bob aren't just terminal nodes...they are also hubs. Other transactions from other parties can be routed over their channel. So let's say that during this time period, Dave wants to pay Charlie. Dave has a channel with Bob, and Charlie has a channel with Alice. Now our network looks like this:
Charlie <----> Alice <----> Bob <----> Dave
Because the payments from Dave to Charlie put money back on Alice's side of the channel, Alice could very well pay Bob the full 200 mBTC without having to close and re-open the channel. This is effectively how the traditional banking system clears transactions using deferred net settlement.
It's also important to note that if the channel is getting lopsided, Alice and Bob can incentivize routing in one direction by lowering the fee they charge to use their channel. As you can see, it is often even in their best interest to charge a negative fee rather than incur the costs of re-opening a channel.
"Instead of closing and re-opening the channel, I'll send you 100 mBTC through the blockchain, and you will send me 100 mBTC through the lightning channel. So the restart will only cost us $1 and the total cost will be only $3". Can this trick be done securely, so that neither Alice nor Bob can cheat?
Hopefully, you could avoid this situation as illustrated above. If not, it sounds like Alice and Bob will have to have either 1) trust in each other, or 2) have some other sort of smart contract in place (which would likely lead to even more transaction fees, not less). I don't see this as a viable or cost effective solution. It would be best to incentivize others to use the channel to restore funds on Alice's side of the channel.