We had ours at a restaurant. Firstly, many restaurants have functions and/or wedding packages with cheaper prices than the usual a la carte menu - you can have a fixed menu for everyone, or pick 2 dishes per course and then they serve that alternately; you can usually also arrange to pick 2 - 3 dishes per course and then allow guests to order from your choices on the day (usually more expensive). Drinks can be by the package, or on a tab.
Secondly, depending on the size/set up of the restaurant, you may have the whole place to yourself, or they may give you a private room and still serve other customers in separate room. The capacity for most mid-size, mid-priced restaurants seems to be around 50 - 60, so I'd guess you can easily book out an entire restaurant and have the privacy. For the large restaurants that host big weddings, there may be a minimum number of guests for functions/weddings (often 80 to 100) - it's still worth asking what they can do for you, but be prepared that they may not be willing to close their other dining rooms (and reduce their profits) during your small-ish wedding.
We brought our own cake to the restaurant. I think few restaurants these days have the facility to do a wedding cake onsite, but they may have recommendations for local bakers.
I think for the size of your wedding and the less formal nature, you should have lots of scope for negotiating a suitable arrangement with the smaller restaurants, which often seem to be more flexible than large hotels/venues. hope this helps