If you want to change the rate overtime, you would need to code this functionality or use IncreasingPriceCrowdsale. If you want to change the rate manually, again you would need to code this functionality so that you could change it. Though you would want to be clear with your community when, why and by how much you would change the rate by. A good place to start to see how to do this would be IncreasingPriceCrowdsale.
The Crowdsale contracts accept Ether. If you want to accept a token, you will need to create your own version to accept a stable token. You may want to look at how you could launch your token on a DEX instead.
For anyone else in the community reading this, I suggest looking at Points to consider when creating a fungible token (ERC20, ERC777)