Still, could someone explain to me why can't these apps that I described work on older Android? What APIs, libraries or whatever this stuff is called could possibly be required for a cleaning app and a freaking dictionary?
Well an API (application programming interface)
"is a set of subroutine definitions, protocols, and tools for building application software. In general terms, it's a set of clearly defined methods of communication between various software components"(look wikipedia for a more in depth explanation) to put it simple, is a kind of translator between the code you make and the device, things like "turn on the wifi" and "connect to the internet in background in this app" (bad examples i know but i'am trying to make myself understood) the problem on android is that in between versions the API is Modified, (Calls change their sintaxis, or name, Some change their original functions, some are merged because they were too similar) the point is that your 4.0.1 app can't communicate whit your 2.3.6 device. It might seen weird if your comparing it to how OS works in PC nowadays, the reason for that is there is a "standard" on how a PC should work and behave, Smartphones in the other hand, are constantly changing, Software and Hardware, new functions, new custom parts, different companies etc.
You should keep trying to install a custom ROM, your model is old but it is from a Known Company with a decent amount of support, if the ROM is designed for your model it should work, you can't install ROMs designed for other devices, i have this link
http://www.htcmania.com/showthread.php?t=399821 is a collection of everything related to your device (ROMs and Tutorials) is in Spanish tough, and it is old, some links do not work (not all of them are dead i check), try translate with google and see if it is good.