Positioning of Particles
You can achieve this with several different ways:

A) Don't have the wrong particles (Chose one or more)


Make the houses smaller
Make less houses
On rotation, check "normal". If you made your normals right, the houses should align along the faces decreasing the probability of going of an edge
Adjust the seed until all houses fit in the areas visible in the final render


B) Cut them in particle edit


Go into the particle edit mode
Cut all wrong placed houses


C) Vertex groups


Add a new vertex group
Assign all faces where a house is possibly allowed to stand (leaving a maring of the maximum size of a house in every direction) to that group
In the particle settings -> Vertex groups, select this group under "density"


D) Texture (Cycles only)


Create a new, empty image.
Go to orthographic top-down view of your city.
Select your mesh.
Go into texture paint mode.
Paint the areas where houses are allowed.
Go to particle settings -> Texture
Create a new texture and go to texture properties
Link that texture to the image you painted
Under influence uncheck all but "density"


E) Remove them manually


Apply your particle system.
Delete wrong houses
Select the remaining ones and join them (optional)


That's about all the possible ways I could think of. Chose the one you like the most! If I missed a good way, please add it. If something is unclear or you need screenshots, I can add them.