Running Simutrans as a server isn't hard. But configuring your network to be accessible from outside of LAN is (in most cases) a pain. (It's even not possible with quite a lot of Internet service providers since they don't provide you a public IP or block any incoming traffic.) In addition hosting at home may be expensive (your computer should run 24 hours a day) and you would better have to have a very fast internet connection with low ping, otherwise your friends will have lags and disconnects when playing on your server.
Configuring network NATs is pretty simple stuff. The main problem, as you mentioned, is if your ISP uses a large scale NAT (I think its called "provider level", not sure) which is often the case for the cheapest internet providers such as the lowest available packets from providers like BT. If you have an IPv6 address it should be no issue at all unless simutrans does not support ipv6 (which there was some testing for a while ago I recall).
Running costs at home can be minimized by correctly configuring your computer. If you have any old desktop lying around set it up as a Linux server and remove unnecessary hardware like optical drives and graphic accelerators. Cutting back on PSU power might also help. Obviously not everyone has this stuff lying around but with servers you must remember you are also paying for other features so it is not that cost effective I would imagine (servers often are less energy efficient as more power is needed to cool down the high density racks, partly reclaimed only by the scale of operation).
You were also not telling the complete truth about internet speed. Most ADSL connections have more than sufficient download speed to run a server. However their upload (usually 1/20 or worse of the download speed) is the problem. Once clients are connected to your server it actually uses very little upload bandwidth so lag should not be an issue at all unless you have some other system on your network uploading vast amounts. Additionally you can change the client frames behind setting (which clients can personalize with a client side version on top) so that poor and unreliable upload will not disconnect them.
The a actual problem which you neglected to mention is that you need fast upload to upload the game saves when clients join. If you have a broadband package like I do with only 20 kb/sec upload it would take 1.5 hours for people to join if I were to host a server the size of the experimental server which is completely impossible to play with. However nothing stops you hosting tiny servers where the games are 250-500 kb large. Also if you are using any kind of cable or fibre optic broadband connection this is not a problem as the upload ratio is a lot better.
No, I'm sorry. For hosting a server I need to spend money on network, power and hardware. So I charge you a little amount of 4,99€* per month (or 4,16€* if you pay quarterly) if you want to use this service.
You might want to place some guarantees with that as to the quality of service provided by the deal. Even if you are hosting with proper server hardware in a data centre you can still run into resource bottlenecks which, due to sharing with other servers, could render many simutrans servers unplayable and I am pretty sure people will not be happy considering they are paying. You might also want to explain the server setup to them (how resources are allocated, how much resources are available etc) so that they know exactly how much value they are getting and what potentially causes problems.
You might also consider a "pay as you go" model to servers. Someone who only wants to run a server part of the time (6-12 hours a day) will not be using as much resources as someone who is running a server 24/7 so should be able to get away with paying less. Additionally metering could be done based on server activity since most servers pause with no clients connected (which can be more than half the time) and so consume practically no resources compared with a server that runs 24/7. Further still is the game complexity as a map like experimental server is using consumes far more resources (processor, bandwidth etc) than a tiny map like Fifty hosts over summer and winter. Also you should consider discounts for people running multiple servers maybe.