It sounds like you're experiencing an issue with establishing the value of your services. Let's look at Louis Vuitton bags for a minute here. They cost 10x what another bag of the same quality would, but do they accomplish 10x the work? Of course not. The fact of the matter is that the value of Louis Vuitton bags are higher because of the way they're marketed and where they're marketed. The same marketing strategy that works on 5th Avenue or Rodeo Drive doesn't work in China Town.
While $5 per hour may be good money for you, the fact that your basing your services on the US dollar at such a low cost is devaluing your work. You might be better off pricing yourself on something other than the US dollar, such as 375 BDT per hour. Sure, as a provider I'll crunch the numbers and figure out that you're still working for $5 USD, but it makes the provider look at the situation from a different perspective. They are seeing it through your local economic situation rather than projecting it to their own.
Additionally, you may want to adjust your pricing based on the marketplace you're working in. For instance, if you're bidding on Elance or Guru.com, frequently price is very competitive and your lower prices (in USD) will make you attractive. However, if you're bidding in other markets such as with a private client you in the USA you may raise your prices to $30 USD because that's the value of the services to the client. Remember, you should be quoting the work out based on the value for each particular client. If your software is worth $100 to me but only $5 to someone in another situation, you should be charging me $100 and the other person $5. We're both happy and you're still preserving your value as a developer.
Back to the point, you could either adjust your pricing based on the market that you're selling or you could adjust your pricing relative to the perspective of the potential buyer. Either one might give you an edge without undervaluing your skills.