say, for instance, I build a farm in Elyria, After a while, i can afford to buy more land to grow my crops. I keep on expanding, Is there a limit to my expansion?
No limit that I know of, but building too big might upset other farmers if you're selling your goods cheaper because you have more crops.
How do I attract NPCs to work on my farm?
Befriend them? Actually I have no idea.
After a while I talk a friend into bying into the game, he joins my farm, builds his own house adjacent to my plots of land. Can this grow into a town?
Yes, if you're not already in a town and you have the building required. Atleast that's how I've understood it.