With all that said, will what you suggest work in this situation? Wouldn't the phones have the same problem if the internet goes down?
Sure why not? Let's draw a simplified network diagram:
clients --- subnet routers --- external router
The subnet router here controls the clients view of the world. Inside the domain foo.com there can be many subnets and possibly (although not necessarily) subdomains (e.g. boston.foo.com, new-york.foo.com, palo-alto.foo.com) We can even take this further:
clients --- work-group-routers --- subnet-routers --- external-router --- backbone-router --- ...
Any of the routers in that chain can act as a name server for anything behind them, and they can depend on upstream routers or peers or ... to answer anything they don't know (caching DNS). Most nameservers act as both servers to machines downstream of them and clients of either machines upstream or master name servers. The point is that the only thing the clients care about is when they ask "what is the IP for joesmith.paris.foo.com" that they get an answer. Obviously not all nameservers are routers nor are all routers nameservers, but for a small to medium office combining them is quite common.
In your case you can configure the router as the local name server, it will answer any DNS requests from it's cache or by asking the next nameserver up the chain. It will also have local entries for the phones and possibly other local machines. When the internet link goes down (or even just your upstream DNS) it can still provide answers for anything in it's cache including the local entries.