> However, if I try to do the same with Devanagari script (itrans inscript), table columns don't get aligned properly.

Use [`valign`](https://elpa.gnu.org/packages/valign.html) from GNU ELPA.

From the blurb

> This package provides visual alignment for Org Mode, Markdown and table.el tables on GUI Emacs. It can properly align tables containing variable-pitch font, CJK characters and images. Meanwhile, the text-based alignment generated by Org mode (or Markdown mode) is left untouched.

For the sake of demonstration, this is what I did

1. Install `valign` with `M-x pacakge-refresh-contents` and `M-x package-install RET valign RET`

2. Add the following to your init file (or `eval` it)

```elisp

(add-hook 'org-mode-hook #'valign-mode)
```

3. Copy 

```
| क | ख | ग | घ | ङ |
| च | छ | ज | झ | ञ |
| ट | ठ | ड | ढ | ण |
| त | थ | द | ध | न |
| प | फ | ब | भ | म |
```

to an `org` file.

4. Do `M-x revert-buffer`

5. This is the screenshot of *before* and *after* `valign` is activated.

[![An `org` buffer with `indic` script *without* and *with* `valign-mode`][1]][1]

`valign` is turned off when the table size exceeds a specific threshold.  So, if you are tables are big bump the value of `valign-max-table-size`

If  you haven't already noticed ... *You do NOT need to do all the jugglery with fonts and their widths suggested in the other responses.*  This is because the `valign` library measures pixel-width when doing alignment.  


  [1]: https://i.sstatic.net/YLB9j.png