You can get various car upholstery cleaners and home upholstery cleaners for not a lot of money.
Use a fairly course sponge to rub the cleaner in and make sure to towel dry the fabric as much as possible.
The main problem with fiat seats is if you leave them too wet then you get nasty water marks all over them once they have dried.
I usually rent of these dirt doctor carpet cleaners from morrisons wash them with your chosen upholstery cleaner( I usually use Autoglyms upholstery cleaner ) then suck out all the excess water.
I also add a little air freshener of your choice which then leaves a fresh scent .
Ah that's the million dollar question, I had many unsuccessful searches and false alarms searching for one, tried several but not great at the job. I suggest keep trying and experimenting! As a fellow member of the FF I would offer the use of mine in exchange for trying yours out but this can cause problems as these cleaners are usually very possessive.