It's nothing to do with fonts, the character encoding is going wrong somewhere. The first step is to ensure your Arabic text fields use the correct collation. A pretty good introduction can be found here
SQL Server and Arabic Language[
^]. You should perform a test inserts directly into the db.
I don't think this will fix *existing* records, but I could well be wrong, my test rig at home won't let me try this easily. Hopefully I am wrong about this.
The other problem you might be having is that your server is interpreting the Arabic in the http request as one of the European encodings. This is less likely, but if you set the default request encoding to utf8, you should be OK.
You only need to check the request encoding if collation thing on the database fails.