Question about out of state checks and weird overdraft charges?

My boyfriend tried to cash a check that was out of state at our bank, and they said something about waiting for it to clear. Then, the woman said that she had to go have her boss look at the check and verify if it was real. He or she did, of course. She didn't hold the funds, but went ahead and cashed it. Is this normal? Why do out of state checks have to be held (or sometimes held), and why would they assume the check was fake?
As for my second question, I've been charged overdraft fees twice when I never went over. When I asked the bank about it, they said some gas station had held way more than I'd spent there for a few days. I was refunded, fortunately. This happened again with either Wal-Mart or Sam's when I bought gas there. The woman I talked to this time did not want to refund my money and was rude. She only refunded it when I asked to speak to her supervisor about it. But how is it legal for a place to hold $100 when I spent $30??? And how can I stop them from doing this??? It doesn't even show up on my account. I just see overdraft fees for no reason.
 
Back
Top