I don't think that there's any service able to do this and also pay for mining fees on top. You could set up a wallet locally and have it programmed to send BTC to an address that converts funds to FIAT as they arrive as a service (using a service like for example Uphold or Mistertango). But mining fees are on you one way or the other.
I think this is the correct answer...
Technically, i would solve it by running bitcoind, then create a cronjob:
1 8 * * * bitcoin-cli sendtoaddress "1Myaddressdmfkljsmdfkjsd" 0.001
I would create a bitcoin.conf file in ~/.bitcoin and add following lines:
rpcuser=delme
rpcpassword=pickyourownpassword
txconfirmtarget=144
Transaction fees are a given, the only way around them is by using a service that pays the fee in your place (like coinbase used to do), but by adding txconfirmtarget to your bitcoin.conf, you basically tell your wallet: i'm willing to way 144 blocks for a 95% chance of getting a confirmation.
You can change the number of blocks, but remember: most nodes drop unconfirmed transactions from their mempool after 3 days, plus your wallet has no way to look in the future. If the mempool size explodes and a fee bidding war starts, setting to big of a number might result in all your transactions getting dropped from the node's mempool after a couple of days.
Do note it might be a good idear to lock your wallet, in this case you have to run a second script to unlock it before issuing a "sendtoaddress"...