If I change a router's subnet mask to one that includes the old one, will the hosts with the old configuration still work?

It would work somewhat. It depends on how you define work. If you change the netmask on you router, so that instead of having 10.2.1.1/24 it will have 10.2.1.1/16 then:

A host with a 10.2.1.0/24 address could still reach any system with an address between 10.2.1.0-10.2.1.255 with a mask of /24 or /16. The systems would simply use arp resolution and connect directly to the each other. Since from the perspective of both systems they will each be on their local network.

A host with a 10.2.1.0/24 would be able to connect to any host outside of the 10.2.0.0/16 network. It would ARP for the gateway address and connect through the via your router.

The only thing they couldn't reach is hosts on 10.2.0.0/16, but not in the 10.2.1.0/24 range. The host with an address in 10.2.1.0/24 would try to connect via the router, but a host on that subnet, but outside of 10.2.1.0/24 would try to connect directly. Even this can be mitigated, on some routers using something called proxy-arp. You basically have to convince the router to reply to ARP requests on behalf of a system with a 10.2.1.0/24 when the request came from a system not within that subnet.

The key point here is that will work somewhat, but you must fix the netmask on all your systems fixed to the new subnet before you start assigning address space from the other portion of the network.