To keep this on-topic, and not make this opinion-based I'll just speak to the technologies you mention in your question.
re: managed versus unmanaged
An unmanaged switch gives you no functionality to monitor the switch. You can't see packets sent / received, error counts, etc. They're just a "black box" that moves packets. Typically you don't get virtual LAN (VLAN) functionality.
A managed switch is going to give you visibility into the amounts of traffic flowing, and typically will allow you to view the MAC adjacency tables, and to use protocols like Spanning Tree Protocol (STP), Link Layer Discovery Protocol (LLDP), Simple Network Management Protocol (SNMP), etc.
I don't know what a "Smart" switch is. Can you provide an example?
Many people would say that, at 140+ clients, an unmanaged switch doesn't give you enough visibility to troubleshoot problems. I'd be really, really wary of using unmanaged switches in such an environment.
re: stacking
Stackable switches have dedicated ports to allow higher-speed connectivity to other switches than the non-stacking ports will allow. Connecting switches together via a single non-stacking port can create a bottleneck. Will it create one in your scenario? It depends.
You could also aggregate multiple ports between switches as an alternative to using a stackable switch. You can think about aggregated links similarly to stacking, from a bandwidth perspective. (Though, obviously, you'll be using ports for interconnection in an link aggregation scenario that you wouldn't be using in a stackable switch scenario.)
With 140 client computers you probably won't be connecting all the clients to the same switch to which servers they might be accessing will be connected (since you'll likely be using switches that max-out at 48 ports). The clients connected to the same switch as the servers will have higher-speed access to those servers than the other clients. Using a stackable switch (or aggregation) would give more bandwidth to those clients attached to switches other than the one to which the servers are connected.
Making a call on stackable versus non-stackable is a harder call to make. If you don't have on premise servers, for example, and all the clients will be talking out the "uplink" port anyway, then you probably won't see any bandwidth contention like I described above in a non-stackable scenario.
re: separating the phones
If the phones need Power over Ethernet (PoE) and the desktop clients don't then getting a separate smaller-port-count PoE switch for the phones probably makes sense. There's no sense in buying more PoE ports than you need, given that PoE ports have a cost premium over non-PoE ports.
If you're not using PoE then it's not likely that you'll see any particular benefit from going with a separate switch for the phones, so long as the switches support segregating the phones into a separate VLAN (which is a best practice with nearly every voice over IP (VoIP) system out there).