I would go for option 2: Internal Sharepoint Model (Server Object Model).
1) Since your service will be hosted on the server, using the SOM will provide you with a lot of functionality which is not available int he Client Object Model.
2) The Client Object Model internally calls a Web Service (Client.svc) which in turn calls a stripped down version of the Server Object Model. So using the Client Object Model will have some performance overhead compared to directly using the Server Object Model.
3) There is always an issue of cross domain access with the Client Object Model. You will not be able to access the data of one site collection from another.