1) It is possible to have multiple subnets "behind" one router; the Internet would be a very broken place with millions more routers needed if it were not.
However, your example of using a /16 subnet mask on the LAN interface, with many /24's connecting to it, is not exactly how it would actually function. (More on that in a moment.)
2) There are many use cases. This aggregation and routing of traffic for many networks/ subnets is the purpose of a router.
Take for a simple example, a branch office location with VoIP telephones. At this site, there is a router connected via Dot1q trunking to a layer 2 access switch.
There is, of course, a need for separation of the Voice and Data traffic, which can be achieved by using separate VLANS on the access switches. Each VLAN will have a separate subnet back on our router. Each subnet would terminate on its own "sub interface", a logical partitioning of the physical connection to the access switches.
In this example, there are two subnets (one for data, and one for voice) living "behind" the router.
3) The performance benefit is that you don't need a different physical device to handle the routing for every single subnet in your network. You talk about the traffic ending up on the same router, and it does, but the traffic is still separated unless you specifically allow it to move between the subnets.
How do you have this set up at the moment? Are you using a private range or another of you public subsets on G0/0?
You can't have the same subnet on different interfaces as it would break routing. The router wouldn't know which hosts were reachable through each of the interfaces.
There are a couple of workarounds if you want to have your BGP peering on the same network as your public address space:
It is possible to create a bridge-group consisting of G0/0 and G0/1. You can then assign a BVI to the group with your public addresses. This would give you a single IP interface with traffic from G0/0 and G0/1 L2 forwarded to the IP interface. Another option would be to connect your BGP connection into the LAN and put your IPs on G0/1 only.
This isn't the usual way to peer with a provider. It would be much better to use separate IP interfaces for the LAN and peering so that policies and ACLs can be applied. What is your reasoning for wanting it set up like this? Is it just so your trace routes show your public address?
Best Answer
Technically, the firewall would be the "router" in this case. Multiple subnets can coexist on one layer-2 broadcast domain. Each subnet will function as if the others aren't there.