Why does Android disable HSDPA/EDGE communication while calling? My ISP currently has a severe outage, which is why I'm tethering my Android phone and a MacBook over WiFi. The Android phone is a HTC Desire GSM running Cyanogen 7. I have a stable HSDPA/EDGE connection.

Now, as this is my only phone, it rings from time to time. But whenever it does and I accept a call, the mobile data connection is lost or cancelled. Same for placing calls. Writing texts won't cancel the mobile data connection.

So, whenever I am on the phone, the internet connection goes dead. 

Why is this? Is there any technical limitation that won't allow one to call and send/receive mobile data at the same time? If not, can you somehow trick Android into not cutting the connection?
Most HSDPA / EDGE CDMA networks don't support data and voice at the same time.  CDMA Modern GSM networks (including 3G and HSDPA, but not EDGE) do, and LTE will, so I'm not sure why you're having this problem.

It's possible that Dual-Transfer Mode may not be enabled on your phone.  Alternatively, your network might not support it.  (Info on DTM.)